Skip to main content
Glama

Create Announcement (Teacher)

classroom_create_announcement

Post announcements to a Google Classroom course stream. Requires teacher permissions to share updates with students.

Instructions

Post an announcement to a course stream. Requires teacher rights.

Args:

  • course_id (string), text (string, 1-10000 chars)

Returns: The new announcement's id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesAnnouncement body text
course_idYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv1.0.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already establish non-read-only, non-idempotent, non-destructive behavior. The description adds the authorization requirement and the return value ('The new announcement's id'), which are behavioral details beyond the annotations. It does not describe side effects like notifications, but the annotation set lowers that burden.

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 three short, tightly packed components: action+prerequisite, args, and return. It is front-loaded and contains no filler or redundant explanation.

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?

Covers the action, authorization requirement, arguments, and return ID, which is nearly everything needed. The only notable gap is that course_id is not explicitly tied to classroom_list_courses, but that is inferable from the sibling tool set.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The Args section merely restates the schema's types and length bounds, adding no new meaning. With schema description coverage at 50%, the description needed to clarify what course_id refers to or how to obtain it, but it does not. The text parameter gains no value beyond the schema's existing description.

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?

The description opens with a specific verb+resource: 'Post an announcement to a course stream.' This clearly distinguishes the tool from sibling list/read tools and from classroom_create_topic. The teacher-rights qualifier further pins down intended use.

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 states a meaningful precondition ('Requires teacher rights'), giving the agent clear context for when invocation is appropriate. It does not explicitly name alternatives or when-not conditions, but the action is specific enough that confusion with read-only sibling tools is unlikely.

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

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/ymr-gif/classroom-mcp-server'

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