Skip to main content
Glama

Get Content Migration Status

get_content_migration_status
Read-only

Read a course content migration's current progress snapshot and terminal issues, so you can monitor or poll migration status until completion.

Instructions

Read one content migration and its current progress snapshot.

Each call reads progress once. Call again only when poll_again is true. Terminal results include migration issues when Canvas makes them available.

Input Schema

NameRequiredDescriptionDefault
migration_idYesThe migration_id returned by create_content_migration
course_identifierYesCourse code or Canvas ID of the target course (the course the migration was created in)

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.15.0
    • addedInput schema / properties / course_identifier / description
      Added value: +"Course code or Canvas ID of the target course\n(the course the migration was created in)"
    • addedInput schema / properties / migration_id / description
      Added value: +"The migration_id returned by create_content_migration"
  2. Addedv1.11.0

TDQS

A4.1/5.0
Behavior4/5

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

The readOnlyHint already marks this as a safe read, but the description adds useful behavior beyond annotations: progress is read once per call, polling is conditional on poll_again, and terminal results may include migration issues. It does not cover auth or rate limits, but those are not central for this read operation.

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 short and front-loaded: it states the core read operation first, then explains polling behavior and terminal-result caveats. Every sentence contributes useful information without repetition.

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?

An output schema exists, so the description need not explain return structure. It still adds the important output-adjacent behaviors: one progress read per call, conditional polling via poll_again, and possible migration issues in terminal results, making it complete for an agent using this 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%, and both parameters are already documented in the schema, including migration_id being the value returned by create_content_migration. The description adds no additional parameter syntax or constraints beyond that baseline.

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?

The description clearly states a specific verb and resource: it reads one content migration and its current progress snapshot. It makes the single-migration scope clear, but it does not explicitly contrast with the related create_content_migration sibling.

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?

It gives concrete polling guidance: each call reads once and the caller should poll again only when poll_again is true. It does not explicitly say to use this after create_content_migration or name alternatives, so it is clear but not fully routing-aware.

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

Deploy Server

Other Tools