Skip to main content
Glama

unw_banner_plan_remove

Remove a single course row from a Banner Plan Ahead worksheet by CRN or subject and number; confirmation is required before the write, and results include a before/after diff.

Instructions

Remove one course row from a Banner plan (writes to Banner).

Confirmation is ENFORCED: confirm is required and must be true, otherwise the tool names the exact row and projected credits and performs no write. Identify the row by crn or subject+number; plan is an id or exact name. Successful writes return a before/after diff read back from Banner.

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": {
      "term": "<term>",
      "plan": "<plan>",
      "confirm": "<confirm>"
    },
    "name": "unw_banner_plan_remove"
  }
}

Input Schema

NameRequiredDescriptionDefault
crnNo
planYes
termYes
numberNo
confirmYes
subjectNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full load and does it well: it discloses that this writes to Banner, that confirmation is enforced, and that a non-true confirm triggers a no-write dry run that names the row and projected credits. It also promises a before/after diff read back from Banner. It stops short of stating reversibility or permission requirements.

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?

Four short sentences, front-loaded with the action and side effect before the confirmation mechanics and identification rules. Little waste, though 'Confirmation is ENFORCED: confirm is required and must be true' is slightly redundant.

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 mutation tool with no annotations and no output schema, the description covers the essentials: side effects, the enforced confirmation/dry-run path, row identification, and the return shape (before/after diff). Missing only term semantics and error behavior when a row is not found.

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 across six parameters. It does explain confirm (must be true), plan (id or exact name), and crn vs subject+number for row identification, but 'term' — a required parameter — is never explained, leaving a meaningful hole.

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?

States a specific verb and resource: 'Remove one course row from a Banner plan,' with the parenthetical '(writes to Banner)' flagging the side effect. The 'one course row' granularity implicitly separates it from plan-level operations like unw_banner_plan_delete, but no sibling is named explicitly.

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?

Gives operative guidance on how to identify the row (crn or subject+number) and the required confirmation, which is genuinely useful. However, it never says when to use this versus unw_banner_plan_delete or unw_banner_plan_add, and gives no prerequisites or when-not conditions.

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