Skip to main content
Glama

Mover un curso de colección

move_course_to_collection

Move a course to a collection or remove it from its collection by omitting the destination collection ID.

Instructions

[Cuenta docente] Mueve un curso tuyo a una colección tuya, o lo saca de su colección si no envías collection_id.

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": {
      "course_id": "<course_id>"
    },
    "name": "move_course_to_collection"
  }
}

Input Schema

NameRequiredDescriptionDefault
course_idYesCurso
collection_idNoColección de destino

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.9/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false, openWorldHint=false), the description discloses the ownership constraint that both the course and the collection must belong to the caller, and that omitting collection_id performs a removal rather than a move. It does not state what happens if the course already sits in another collection, nor what a successful response looks like.

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?

A single sentence with the verb front-loaded, the audience scope bracketed up front, and the conditional removal case appended where it is most useful. 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 two-parameter, non-destructive linkage tool with no output schema, the description covers actor scope, both directions of the operation, and the optionality that drives them. The remaining gap is edge-case behaviour (course already in another collection, error conditions), which is minor for this complexity.

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 already 100%, so the baseline is 3, but the description adds genuinely new meaning: collection_id is optional and its absence is semantically significant (unlink from the current collection). That is information neither the field description 'Colección de destino' nor the required list conveys on its own.

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 (moves a course into a collection) and explicitly covers the inverse operation of removing it. The bracketed '[Cuenta docente]' scopes it to a teacher account. It does not name a sibling (e.g. reorder_collection_courses) to disambiguate, so it stops just short of a 5.

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 conditional 'si no envías collection_id' tells the agent how to invoke the removal path, which is real usage guidance. However, there is no explicit statement of when to prefer this over neighbouring tools like reorder_collection_courses or save_collection, and no prerequisites are given.

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