Skip to main content
Glama

THIRI Chord Intelligence

Ownership verified

Server Details

Chord intelligence for agents: analyze, voice, reharmonize, and resolve chords.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 3.7/5 across 4 of 4 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool serves a clearly distinct purpose: parsing, voicing, reharmonizing, and resolving chords. No overlap or ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (analyze_chord, generate_voicing, reharmonize, resolve_chord).

Tool Count5/5

Four tools is well-scoped for a specialized music theory server; each tool covers a essential aspect of chord intelligence.

Completeness4/5

Covers analysis, voicing, reharmonization, and resolution. Minor gap: no direct chord progression generation, but the reharmonize tool addresses progressions.

Available Tools

4 tools
analyze_chordA
Read-onlyIdempotent
Inspect

Parse a chord into root, quality, intervals, and (with a key) roman numeral + function.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNo
chordYes
Behavior4/5

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

Description adds useful behavioral context beyond annotations by specifying the output components (root, quality, intervals, roman numeral, function). Annotations already indicate read-only, idempotent, non-destructive behavior, so the description enhances transparency without contradicting them.

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?

The description is a single, concise sentence that immediately conveys the tool's purpose. No redundant or unnecessary words.

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?

Given the tool's simplicity (2 parameters, no output schema) and rich annotations, the description adequately covers what the tool does and its outputs. It could mention error handling or input validation, but is mostly complete for its complexity.

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

Parameters2/5

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

Schema description coverage is 0%, but the description only mentions parameters 'chord' and 'key' without defining expected formats, constraints, or examples. This provides minimal additional meaning beyond the schema's property names.

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

Purpose5/5

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

Description clearly states the tool parses a chord into musical components (root, quality, intervals, and optionally roman numeral and function). It distinguishes from sibling tools like generate_voicing (creates voicing), reharmonize (alters harmony), and resolve_chord (finds resolution).

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

Usage Guidelines3/5

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

The description implies usage for chord analysis but does not explicitly state when to use this tool versus alternatives, nor are there any exclusions or prerequisites mentioned. Usage context is only implied.

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

generate_voicingA
Read-onlyIdempotent
Inspect

Instrument-ready voicing in a style; pass previousNotes for a voice-leading score.

ParametersJSON Schema
NameRequiredDescriptionDefault
chordYes
styleNo
octaveNo
keyContextNo
previousNotesNo
Behavior4/5

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

Annotations declare readOnlyHint, idempotentHint, and destructiveHint false. The description adds behavioral context by mentioning voice-leading score when 'previousNotes' is provided, which is beyond the annotations. No contradictions.

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?

Single sentence, no redundant words. Front-loaded with key actions. Every part earns its place.

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

Completeness2/5

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

With 5 parameters, no output schema, and no schema descriptions, the description is incomplete. It does not explain the voicing output, available styles, or how parameters affect the result. Significant gaps remain.

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

Parameters2/5

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

Schema coverage is 0%, so description must compensate. It only references 'previousNotes' and implies 'chord' and 'style' via 'in a style', but does not explain 'octave', 'keyContext', or the format of 'chord' and 'previousNotes'. Insufficient detail.

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

Purpose5/5

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

The description uses specific verb 'generate' and resource 'voicing', clearly indicating it creates an instrument-ready arrangement. It distinguishes from siblings like 'analyze_chord' and 'reharmonize' by focusing on voicing generation.

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

Usage Guidelines3/5

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

The description implies usage for generating voicings and optionally passing 'previousNotes' for voice-leading, but provides no guidance on when to use this tool versus siblings like 'resolve_chord' or 'reharmonize'.

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

reharmonizeA
Read-onlyIdempotent
Inspect

Reharmonize a progression. Techniques: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (or auto).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNo
techniqueNo
progressionYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the tool is safe. The description adds technique options but no additional behavioral context beyond that.

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?

The description is a single, well-structured sentence with a list of techniques. It is concise and front-loaded with the action verb.

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

Completeness2/5

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

For a complex reharmonization tool with 3 parameters and no output schema, the description lacks details such as chord notation format, output structure, and prerequisites. It does not fully compensate for the missing schema descriptions.

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 has 3 parameters with 0% description coverage. The description explains the 'technique' parameter values but says nothing about 'key' or 'progression' format or requirements.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Reharmonize a progression.' It lists specific techniques, distinguishing it from sibling tools like analyze_chord or generate_voicing.

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

Usage Guidelines3/5

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

The description implies when to use (reharmonizing) but provides no explicit guidance on when not to use or how it compares to siblings. The listed techniques hint at scenarios but lack clarity.

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

resolve_chordA
Read-onlyIdempotent
Inspect

Resolve a chord to spelled notes, frequencies, MIDI, and recommended scales.

ParametersJSON Schema
NameRequiredDescriptionDefault
chordYes
Behavior4/5

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

Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds value by listing the output types (spelled notes, frequencies, MIDI, scales), which are not present in annotations. It does not contradict annotations.

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

Conciseness3/5

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

The description is a single concise sentence, but it omits critical parameter format details. While every word earns its place, the brevity sacrifices completeness. It is adequately front-loaded but insufficiently informative for a tool with such a bare schema.

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

Completeness2/5

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

Given low schema coverage, no output schema, and a single required parameter, the description is incomplete. It fails to explain the chord parameter format or any constraints, leaving the agent without enough context to invoke the tool correctly. The listed outputs are helpful but not sufficient.

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

Parameters2/5

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

With 0% schema description coverage, the description bears the burden of explaining the 'chord' parameter. It only says 'Resolve a chord' without specifying the expected format (e.g., chord symbol like 'Cmaj7'). This lack of detail hinders correct invocation.

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

Purpose5/5

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

The description clearly states the tool resolves a chord into specific outputs: spelled notes, frequencies, MIDI, and recommended scales. This distinguishes it from siblings like analyze_chord (likely harmonic analysis) and generate_voicing (voicing creation), making the purpose explicit.

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

Usage Guidelines3/5

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

The description implies usage when you need to convert a chord symbol into pitch data and scale recommendations, but it provides no explicit guidance on when to use this tool over siblings or when not to use it. The context is implicit, not directive.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources