Skip to main content
Glama

Get university lecturers

get_university_lecturers
Read-onlyIdempotent

Retrieve all lecturers for a university in a specified semester, merged and deduplicated across active study programs. Use for university-wide lists; prefer program-specific queries for one program.

Instructions

List all lecturers of one university for a semester, merged across its active study programs and deduplicated. Slower than other tools because it fans out one request per program; prefer get_study_program_lecturers when one program is enough. Returns a JSON list.

Input Schema

NameRequiredDescriptionDefault
id_ptYesOpaque university (PT) id, copied exactly from a search_pddikti result (entity "pt"). Do not guess or construct it.
semesterYesSemester code YYYYS: year plus 1 (odd/ganjil) or 2 (even/genap), e.g. "20241".

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and non-destructive, so safety is covered; the description adds genuinely new behavior: per-program fan-out cost, cross-program merging and deduplication, and the return shape (JSON list). It stops short of noting pagination, error behavior for an unknown id_pt, or what happens when a program has no lecturers, which keeps it off a 5.

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?

Three sentences, zero waste, and the most decision-relevant facts are front-loaded: what it returns, then the cost, then the alternative. No restatement of the title or annotations.

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?

For a two-parameter read tool with full schema coverage, rich annotations and no output schema, nothing an agent needs is missing; the fan-out warning and the sibling routing rule cover the only real failure modes (slow call, wrong 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 coverage is 100% — both id_pt (with an explicit "do not guess or construct" warning) and the YYYYS semester pattern are fully documented in the schema. The description reinforces the scope of both parameters but adds no syntax or edge-case detail beyond it, so the 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 and resource ("list all lecturers") plus scope (one university, one semester) and the aggregation semantics (merged across active study programs, deduplicated). It explicitly distinguishes itself from the sibling get_study_program_lecturers, so an agent can route between the two without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit alternative and the condition that selects it: "prefer get_study_program_lecturers when one program is enough." The implied inverse — use this tool when the whole university is needed — is unambiguous, and the cost warning ("slower ... fans out one request per program") reinforces the trade-off.

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