Skip to main content
Glama
doricomcp

doricomcp

by kulbiq

add_barline

Adds a barline at the start of a chosen bar in a Dorico score, with options for double, repeat, final, or dashed styles.

Instructions

Barline at the start of a bar: "||" double, "|:" start repeat, ":|" end repeat, ":|:", "|||" final, ":" dashed.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "kind": "<kind>",
      "bar": "<bar>"
    },
    "name": "add_barline"
  }
}

Input Schema

NameRequiredDescriptionDefault
barYes
flowNo
kindYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden and mostly does not meet it. It never says this mutates the score, whether an existing barline at that position is replaced, whether undo is possible, or what the flow parameter changes.

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?

A single compact sentence that front-loads the placement rule and then enumerates the symbol codes without filler. The density is appropriate, though the list of symbols is presented without any framing sentence about what kind controls.

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 mutating score-editing tool with no annotations, no output schema, and two of three parameters undocumented, the definition is well short of complete. An agent could pick a valid kind but would have no basis for choosing bar or flow semantics.

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 0%, so the description must compensate. It does supply the accepted string values for kind ("||", "|:", ":|", ":|:", "|||", ":"), which is genuinely useful since the schema defines kind as an unconstrained string with no enum, but bar and flow receive no explanation at all.

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

Purpose3/5

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

"Barline at the start of a bar" identifies the resource and placement, implying an add operation, but the verb is absent and the phrase partly restates the tool name. An agent can infer what it does but must guess at whether it inserts, replaces, or toggles a barline.

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

Usage Guidelines2/5

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

There is no statement of when to use this versus siblings like add_repeat_marker or add_flow, and no prerequisites or exclusions. The only guidance is implicit in the symbol glossary, which suggests repeat-related use cases without saying so.

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