Skip to main content
Glama

ai_generate_homework_assignment

Generates structured homework assignment drafts from a course topic, difficulty level, and learning objectives, then optionally publishes them to eeclass.

Instructions

【AI 智能出作業】依據助教或老師給定的課程單元、主題、難度與學習目標,自動生成結構完整、格式優美(包含情境背景、實作任務、繳交規範、評分規準 Rubric)的作業草稿,並可選擇直接發布至 eeclass!

Input Schema

NameRequiredDescriptionDefault
typeNo個人作業或分組作業personal
topicYes作業核心主題(例如:行政處分之撤銷與廢止案例分析)
courseIdYes欲出作業的課程 ID(例如 35657)
targetAudienceNo學生受眾或年級大學部法律系大二學生
difficultyLevelNo作業難度medium
daysUntilDeadlineNo距離截止日的天數
autoCreateInEeclassNo是否直接在 eeclass 中建立此作業(false 僅產生草稿預覽)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description must carry the full behavioral burden. It does disclose the draft-first nature and the optional publish step, but there is a wording mismatch: the description says it can 直接發布至 eeclass while the schema defines autoCreateInEeclass as 建立此作業 — an agent cannot tell whether a real, visible-to-students assignment is created or only a draft. Nothing is said about permissions, irreversibility of publishing, or cost/latency of the AI generation.

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 front-loaded sentence that puts the core action and output structure first. The bracketed 【AI 智能出作業】 label restates the tool name and is mild waste, but the rest is dense and non-redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter generative tool with no annotations and no output schema, the description covers what content the draft contains but not what is actually returned (raw text? an object with ids?), whether a draft is persisted or ephemeral, or whether courseId must be a course the caller teaches. Enough to attempt a call, not enough to predict its side effects.

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%, so every parameter (courseId, topic, type, targetAudience, difficultyLevel, daysUntilDeadline, autoCreateInEeclass) is already documented in structured form. The description echoes topic/difficulty and the publish option but adds no syntax, format, or constraint details beyond the schema, so baseline 3 applies.

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

Purpose5/5

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

States a specific verb+resource (AI 自動生成作業草稿) and enumerates the generated artifacts: 情境背景、實作任務、繳交規範、評分規準 Rubric. The 'AI-generated draft' framing, plus the optional eeclass publish step, separates it from the manual create_homework and from ai_compose_bulletin_announcement / ai_assist_grading_feedback siblings.

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?

Gives a clear triggering scenario: a TA or teacher supplies course unit, topic, difficulty and learning objectives, and the tool produces a draft. It does not explicitly state when NOT to use it (e.g. when a human-authored assignment already exists, use create_homework/copy_homework instead), so no exclusions or named alternatives.

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