Skip to main content
Glama

get_assignment_details

Retrieve detailed information about a specific Canvas assignment, including requirements, due dates, and submission guidelines, by providing the course identifier and assignment ID.

Instructions

Get detailed information about a specific assignment.

    Args:
        course_identifier: The Canvas course code (e.g., badm_554_120251_246794) or ID
        assignment_id: The Canvas assignment ID
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
course_identifierYes
assignment_idYes

Implementation Reference

  • The main handler function implementing the get_assignment_details tool, fetching assignment details via Canvas API and formatting the response.
    @validate_params
    async def get_assignment_details(course_identifier: str | int, assignment_id: str | int) -> str:
        """Get detailed information about a specific assignment.
    
        Args:
            course_identifier: The Canvas course code (e.g., badm_554_120251_246794) or ID
            assignment_id: The Canvas assignment ID
        """
        course_id = await get_course_id(course_identifier)
    
        # Ensure assignment_id is a string
        assignment_id_str = str(assignment_id)
    
        response = await make_canvas_request(
            "get", f"/courses/{course_id}/assignments/{assignment_id_str}"
        )
    
        if "error" in response:
            return f"Error fetching assignment details: {response['error']}"
    
        details = [
            f"Name: {response.get('name', 'N/A')}",
            f"Description: {response.get('description', 'N/A')}",
            f"Due Date: {format_date(response.get('due_at'))}",
            f"Points Possible: {response.get('points_possible', 'N/A')}",
            f"Submission Types: {', '.join(response.get('submission_types', ['N/A']))}",
            f"Published: {response.get('published', False)}",
            f"Locked: {response.get('locked_for_user', False)}"
        ]
    
        # Try to get the course code for display
        course_display = await get_course_code(course_id) or course_identifier
        return f"Assignment Details for ID {assignment_id} in course {course_display}:\n\n" + "\n".join(details)
  • Registration of assignment tools, including get_assignment_details, by calling register_assignment_tools(mcp) during server setup.
    register_assignment_tools(mcp)
Install Server

Other Tools

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/vishalsachdev/canvas-mcp'

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