Skip to main content
Glama

duyuru_aboneligi

Create a local announcement subscription profile filtered by course codes, department, faculty, or announcement type to track relevant Istanbul University announcements.

Instructions

Ders/bölüm filtresiyle yerel takip profili oluşturur; mevcut duyurular başlangıçtır.

Ders kodları tam eşleşir (CMPE3111, CMPE 3111, CMPE-3111). Ders veya bölümden birinin eşleşmesi yeterlidir; önceki/yeni tam metin birlikte kontrol edilir. Filtre olmadan yalnız hepsi=True ile bütün fakülte seçilir. Güncelleme tam profil değişimidir ve güncel beklenen_rev ister; eski bekleyenler iptal edilir. Aktif gönderim kiralaması varken filtre değişmez. Harici mesaj/cron oluşturmaz.

Input Schema

NameRequiredDescriptionDefault
turNoogrenci
bolumNo
hepsiNo
fakulteNo
abonelik_idYes
beklenen_revNo
ders_kodlariNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.0

TDQS

A3.8/5.0
Behavior4/5

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

Beyond the annotations (readOnly=false, idempotent=false, destructive=false), the description discloses important side effects: update is a full profile replacement, old pending items are cancelled, and active send leases prevent filter changes. It does not fully explain authentication needs or response behavior, but the key mutation semantics are well surfaced and do not contradict the annotations.

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?

The description is front-loaded with the core purpose and then proceeds through matching rules, filter behavior, update semantics, and concurrency constraints. It is dense but each sentence carries useful information, with only minor compression that could make a phrase or two clearer.

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 mutation tool with 7 parameters, no output schema, and 0% schema coverage, the description covers important behavioral and concurrency semantics. However, it leaves key parameters (abonelik_id, tur enum) unexplained and does not describe success/failure return behavior, so an agent still has gaps to fill.

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?

With 0% schema description coverage, the description must compensate and it partially does: it explains exact course code matching, hepsi=True behavior, beklenen_rev for updates, and that either course or department matching suffices. However, the required abonelik_id and the tur enum values (ogrenci, duyuru, haber, etkinlik) are not explained, leaving several parameters under-specified.

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 that it creates a local follow/subscription profile with course/department filters, which is a specific verb and resource. It also distinguishes itself from notification/queue tools by stating it does not create external messages or cron jobs, though it could more explicitly contrast with siblings like duyurular_listesi.

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 provides clear usage rules: when no filter is given only hepsi=True selects the whole faculty, updates are full profile replacements requiring beklenen_rev, and filter changes are blocked while an active send lease exists. It lacks explicit guidance on when to prefer alternative tools such as duyurular_listesi, but the when/when-not context is substantially covered.

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