Skip to main content
Glama

Server Quality Checklist

75%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.2

  • Disambiguation5/5

    Every tool has a clearly distinct purpose: rendering, analysis, visualization, validation, quick summary, reference, comparison, and MIDI conversion. No two tools overlap in function.

    Naming Consistency5/5

    All tool names follow a consistent snake_case verb_noun pattern (e.g., render_score, probe_audio, import_midi). No mixing of conventions.

    Tool Count5/5

    Nine tools is well-scoped for an audio composition and analysis server, covering creation, validation, analysis, visualization, comparison, and format conversion without excess.

    Completeness4/5

    The tool surface covers core workflows: score authoring (via reference), validation, rendering, multiple analysis methods, comparison, and MIDI I/O. A minor gap is lack of a direct score editing tool, but users provide scores externally.

  • Average 4.4/5 across 9 of 9 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 106 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under Apache 2.0.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • This repository includes a glama.json configuration file.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior3/5

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

    No annotations are provided, so the description carries full disclosure burden. It reveals that timing imports exactly, General MIDI programs map to preset families, mapping guesses are returned, and the score can be re-voiced. However, it does not cover side effects, required permissions, or error behaviors.

    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 consists of two concise sentences that front-load the core purpose and follow with key use case and behavior details. No extraneous information is present.

    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 complexity (MIDI import with mapping) and lack of output schema, the description covers essential aspects: timing fidelity, mapping approach, and response contents. It could be more complete by describing the output RON structure explicitly, but it is sufficient for typical usage.

    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%, with all three parameters documented inline. The description adds limited extra meaning beyond what the schema already provides (e.g., sample rate default), so the baseline score of 3 is appropriate.

    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 converts Standard MIDI Files (format 0 or 1) into cochlea RON scores, specifying the verb 'convert' and the resources (MIDI file to RON score). It distinguishes itself from siblings like export_midi by highlighting the import direction and the mapping process.

    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?

    The description explicitly says 'Use this to bring existing musical material into the compose→render→probe loop,' providing when to use. However, it does not mention when not to use or alternatives beyond the sibling context, which is acceptable given the tool's unique role.

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

  • Behavior4/5

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

    With no annotations, the description discloses key behaviors: the render is deterministic, and the verify parameter triggers assertions with isError result. However, it does not cover authorization or rate limits.

    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 concise sentences with no filler. First sentence states primary purpose, second explains additional feature (verify). Ideal front-loading.

    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 tool that writes output to a file and has no output schema, the description covers the key behavior (rendering to WAV and optional verify report). It does not describe the return value format, but the context is sufficient for basic usage.

    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 baseline is 3. The description adds value for the verify parameter (explaining the error behavior) but does not provide additional meaning beyond schema for other parameters.

    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?

    Clearly states the verb 'render', the resource 'cochlea RON score', and the output 'deterministic WAV mix'. The description distinguishes the tool from siblings like probe_audio or spectrum by specifying its unique purpose of converting a score to audio.

    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?

    Provides explicit context: 'Use this to turn a composed score into audible PCM before probing or inspecting it.' This guides the agent on when to use the tool, though it does not mention when not to use it or alternative tools.

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

  • Behavior4/5

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

    No annotations are provided, so the description bears full responsibility. It discloses that comparison is in feature space (not byte), reports verdicts with dimension names, and describes the optional spectrogram output with color coding (red/blue/black). It also notes the sample rate constraint for spectrogram. This is transparent, though it does not cover potential side effects, permissions, or file size limits.

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

    Conciseness4/5

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

    The description is a single dense paragraph but remains informative without excessive length. It front-loads the main purpose and then details parameters and usage. The length is appropriate, and every sentence contributes value.

    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?

    With no output schema, the description must explain return values. It does so by listing verdict categories (byte-identical, tier-2 equivalent, different) and stating that different names diverging dimensions. It also covers optional outputs (json report, spectrogram). For 5 parameters and a complex comparison tool, this is fairly complete.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3. The description adds value by explaining the spectrogram parameter's output (signed difference heat map with color meanings), the json parameter's effect (append full report), and the window_ms parameter's role (segment window length). It also reiterates supported formats for audio paths. This goes beyond the schema's descriptions.

    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 it compares two audio files in feature space (loudness, onsets, pitch, key, timbre distance, per-segment RMS) and reports a verdict. It distinguishes from byte-byte comparison and mentions supported formats (WAV, FLAC, mp3, ogg). This is specific and differentiates from siblings like spectrogram or probe_audio.

    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?

    The description gives explicit when-to-use context: 'Use this to check whether a re-render, edit, or platform change actually altered the audio in a way that matters.' It also clarifies that a 'different' verdict is normal and not a tool failure. However, it does not explicitly mention when not to use it or name alternative tools despite the sibling list.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It specifies the output format (JSON), the scope (whole file), units (ms), the measurement origin (start of file), and the relationship to `probe_audio`. It does not mention potential side effects or failure modes, but for an analysis-only tool this is adequate.

    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 three sentences long with no wasted words. Each sentence serves a purpose: stating the output, contrasting with `probe_audio`, and listing concrete use cases. It is well-structured and front-loaded with the core function.

    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 that the tool has a single parameter and no output schema, the description is quite complete. It lists all the key output contents (beat times, downbeats, tempo candidates, stability score) and gives usage context. It could mention limitations or error conditions, but for this level of complexity it is sufficient.

    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 coverage is 100% as the sole parameter `audio_path` is described as 'Path to a WAV, FLAC, mp3, or ogg file.' The description restates the supported formats but does not add new semantic meaning beyond what the schema already provides, so the baseline score of 3 applies.

    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 that the tool returns the full beat grid of an audio file as JSON, enumerating the contained data (beat times, downbeats, tempo candidates, stability score). It also distinguishes itself from the sibling `probe_audio` by explaining that this is the detailed version of the compact `tempo` summary.

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

    Usage Guidelines5/5

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

    Explicit use cases are provided: 'line events up to the beat, see where the downbeats fall, or weigh a half/double-tempo alternative.' The alternative for compact tempo needs is clearly identified as `probe_audio`, which keeps only count and mean interval, making the choice between tools explicit.

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

  • Behavior4/5

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

    With no annotations, the description carries full burden. It discloses that the tool is static (no audio rendering), catches specific error types, and is non-destructive. Could be improved by mentioning whether it modifies files or output format, but current info is good.

    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 efficient sentences with zero waste. Front-loaded purpose and usage. Every sentence earns its place.

    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 one parameter, no output schema, and no annotations, the description covers purpose, usage, and key behaviors. Could add return value or error handling details, but current info is largely complete for a validation tool.

    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% (score_path described). The description repeats 'Path to a RON score file' which adds no new meaning beyond the schema. Baseline 3 is appropriate.

    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 validates a RON score against a catalog, catching unknown instruments, inserts, and empty tracks. It uses specific verb 'validate' and resource 'RON score', and distinguishes itself from siblings by mentioning 'use this before render_score'.

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

    Usage Guidelines5/5

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

    Explicitly says 'Use this before render_score to fail fast on authoring mistakes', providing clear context for when to use and the benefit over alternative. No additional guidance needed.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It explains the output format, sampling behavior, and that times are measured from the start of the file. It does not explicitly state that the operation is read-only, but the nature of the tool (analyzing audio) implies no side effects; still, a brief note about computational cost or error conditions would push it to 5.

    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 compact and well-organized: it states the tool's output first, then the use case, and closes with an important time-origin note and cross-reference to an alternative. Every sentence adds value without redundancy, making it quick to parse.

    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 that there is no output schema, the description names the expected data (momentary and short-term LUFS) and the file-format support, which is sufficient for an agent to invoke the tool. It also addresses a key subtlety (time origin) and points to an alternative for a different scenario. It stops just short of fully describing the exact JSON structure, but the information provided is enough for typical selection and invocation.

    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?

    The input schema already provides full descriptive text for both parameters (audio_path and hop_ms), including the EBU R128 context for the default hop. The description adds little beyond the schema, only reiterating the ~100ms sampling and time origin. It does not enrich parameter understanding beyond what the schema gives, so the baseline of 3 is appropriate.

    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 defines the tool as producing a loudness-over-time curve in JSON, with specific measurement windows (momentary and short-term). It explicitly contrasts this with the integrated-LUFS/LRA summary of probe_audio, making the tool's unique value unmistakable.

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

    Usage Guidelines5/5

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

    The description gives concrete use cases (checking if a change moved dynamics, finding the loudest moment) and explicitly points to probe_audio as the alternative for windowed analysis with an anchored offset. This is exactly the kind of when-to-use and when-not-to-use guidance that helps an agent select correctly.

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

  • Behavior4/5

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

    No annotations are provided, so the description carries full responsibility. It discloses that times are relative to the cut and anchored by source.start_ms, and lists all extracted features. It does not mention performance, file size limits, or side effects, but for a read-only analysis tool, this is reasonably transparent.

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

    Conciseness4/5

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

    The description is front-loaded with the core purpose and provides a wealth of detail. However, it is lengthy due to listing many features in the first sentence; a slightly more concise listing or use of categories could improve readability without losing information.

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

    Completeness5/5

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

    Given the complexity of the tool (audio analysis with many output features), the description is highly complete. It covers input formats, output content, use cases, and time-windowing behavior. No output schema exists, but the description implicitly covers what the report contains, making it sufficient for an agent to understand the tool's capabilities.

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

    Parameters4/5

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

    Schema description coverage is 100%, but the tool description adds value by explaining the behavior of from_s/to_s: 'zoom into a time window instead of probing the whole file (report times are then relative to the cut; source.start_ms anchors them).' This clarifies the effect and timing, going beyond the schema's simple 'analyze only from this time' description.

    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 a specific verb ('Extract') and clearly defines the resource ('full feature report') with extensive detail on what is extracted (LUFS, true peak, LRA, onsets, pitch track, melody notes, MFCC, chroma, key, chord timeline, tempo, rhythm, stereo image, sections, silence, clipping). It distinguishes itself implicitly from siblings like 'probe_digest' which likely does a lighter analysis, though not explicitly stated.

    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?

    The description explicitly states use cases ('check loudness targets, confirm onset timing or tempo, read back the melody, see chord progression') and explains the optional time windowing ('Pass from_s/to_s to zoom into a time window'). It does not explicitly state when not to use or name alternative tools, but the context makes it clear this is the comprehensive analysis tool.

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

  • Behavior5/5

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

    With no annotations, the description carries the full burden and does so exceptionally: it discloses the monophonic limitation, quantize behavior, tempo detection, velocity estimation, and that the result is a draft with assumptions returned in the response. This is far richer than merely stating 'transcribes audio'.

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

    Conciseness4/5

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

    The description is longer than average but every sentence adds value, explaining purpose, workflow, behavior, and caveats. The opening metaphor is evocative but not strictly necessary; still, it earns its place by reinforcing the tool's role in the compose loop. Slightly less polish would drop this to 3.

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

    Completeness5/5

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

    Given 7 parameters and a complex audio-analysis behavior, the description covers purpose, limitations, output expectations, and integration with siblings. It is complete enough for an agent to select and invoke the tool correctly, even without an output schema.

    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 coverage is 100%, so the baseline is 3. The description adds contextual meaning for bpm (detected unless passed) and grid (quantization), but doesn't go beyond the schema for individual parameters. The schema already adequately documents each parameter.

    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 a specific verb and resource ('Transcribe a WAV, FLAC, mp3, or ogg file into an editable cochlea RON score') and explicitly distinguishes itself from siblings by calling out its relationship to render_score. It also sets clear scope with the monophonic limitation.

    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?

    The description clearly frames when to use the tool ('the arrow that closes the compose loop') and gives behavioral context, but it doesn't explicitly name alternative tools for cases like polyphonic audio, only implying they exist. This is strong context but lacks an explicit when-not-to-use with alternative names.

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

  • Behavior5/5

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

    With no annotations, the description fully discloses behavior: inline PNG return, optional disk write, annotate overlays, zoom, sheet mode, and incompatibility between sheet and annotate. It also mentions size caps and practical usage notes.

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

    Conciseness4/5

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

    The description is well-structured with front-loaded purpose and concise details. Every sentence adds value, though slightly more brevity could be achieved without losing clarity.

    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 complexity and lack of output schema, the description covers all key behaviors: inline vs. disk output, optional analysis overlays, time zoom, and sheet mode. It adequately prepares the agent for common scenarios.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3. The description adds significant context beyond the schema, such as the purpose of zooming, the meaning of annotate overlays, and the sheet mode's time tiling, making parameter selection more informed.

    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 renders a mel spectrogram for visual inspection of audio files, distinguishing it from numeric analysis tools like probe_audio. It specifies the supported audio formats and the primary use case, making it easy for the agent to select.

    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?

    The description explicitly says to use this tool when a numeric report isn't enough and visual inspection is needed, implying alternatives for other scenarios. While it could be more explicit about when not to use, it provides clear context.

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

  • Behavior4/5

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

    No annotations are provided, so the description carries the full burden. It discloses that the digest is token-cheap, deterministic, ~40 lines, and provides a windowed timeline table. It does not explicitly state read-only behavior or error conditions, but the context implies passive analysis. Slightly lacking in safety disclosure, but overall good.

    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, zero wasted words, front-loaded with the core purpose. Perfectly concise while conveying all necessary information.

    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 absence of an output schema, the description lists the digest's contents (duration, loudness, etc.) and mentions the format (~40 lines, windowed timeline table). It compares to probe_audio, providing context. Missing explicit return structure, but sufficient for most use cases.

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

    Parameters4/5

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

    Schema coverage is 100% with descriptions for both parameters. The description adds value by linking window_ms to the digest's timeline rows ('windowed timeline table') and reinforcing audio_path's accepted formats (WAV or FLAC). This enhances understanding beyond the schema alone.

    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 that the tool produces a deterministic text digest for WAV or FLAC files, listing specific fields (duration, loudness, etc.). It distinguishes itself from probe_audio by being a 'token-cheap' alternative, thus achieving high purpose clarity.

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

    Usage Guidelines5/5

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

    Explicitly advises to 'Reach for this first when you just need a sense of what's in a file, and only fall back to probe_audio when you need exact numbers to assert against.' This provides clear when-to-use and when-not-to-use guidance, effectively differentiating from siblings.

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

  • Behavior5/5

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

    No annotations provided, so description carries full burden. It discloses that timing is exact, instruments become rough GM program labels (not exact), and output is format 1, providing valuable behavioral context.

    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, front-loaded with core purpose, no wasted words, efficient and clear.

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

    Completeness5/5

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

    Given the tool's moderate complexity, complete schema, and no output schema, the description sufficiently covers purpose, behavior, and usage, leaving no critical gaps.

    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 coverage is 100% with descriptions for both parameters. The description adds minimal extra meaning beyond schema, such as clarifying that the output is a Standard MIDI File; baseline 3 is appropriate.

    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 states the tool converts a cochlea RON score to a Standard MIDI File (format 1) and explicitly names the inverse tool 'import_midi', clearly distinguishing its purpose from siblings.

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

    Usage Guidelines5/5

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

    The description provides explicit use cases: hand a composed score to a DAW or notation tool, or round-trip through external MIDI editing, and implies when not to use (if exact instrument presets are needed) by noting instruments become rough GM labels.

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

  • Behavior4/5

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

    No annotations are provided, so the description bears the full burden. It describes the tool as a read-only reference with no side effects, which is transparent. A higher score would require mentioning response length or potential limitations, but the core behavior is clearly stated.

    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 sentence plus a directive, front-loaded with the tool's purpose. Every clause adds value: what it covers, why call it first, and what not to do. No wasted words.

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

    Completeness5/5

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

    Given the tool's purpose as a reference and no output schema, the description comprehensively lists what it contains: grammar, instrument presets with parameters, assertions, and a worked example. It also connects to render_score, making the context complete.

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

    Parameters4/5

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

    There are no parameters, and the schema coverage is 100% by default. The description goes beyond the schema by detailing the content returned (grammar, presets, assertions, examples), which fully compensates for the absence of parameters. The baseline is 4 for 0 parameters.

    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 it is a reference for the RON score grammar, instrument presets, assertions, and a worked example. It distinguishes itself from sibling tools like render_score by explicitly being a reference companion.

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

    Usage Guidelines5/5

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

    The description explicitly instructs to 'Call this FIRST when composing' and explains that render_score accepts what is documented here, warning against guessing the format. This provides clear when-to-use guidance.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

cochlea MCP server

Copy to your README.md:

Score Badge

cochlea MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/richer-richard/cochlea'

If you have feedback or need assistance with the MCP directory API, please join our Discord server