Skip to main content
Glama

genereer_fractienotitie

Read-onlyIdempotent

Stelt de fractienotitie samen (Erik's hero-feature, WS23-core): een agenda-overzicht voor de komende ~2 weken op de portefeuille van de gebruiker, met bolletjes (🟢 positief / 🟠 spannend / 🟡 aandacht / ⚪ procedureel) en per agendapunt een detailblok waarvan de diepgang USER-RELATIEF is (diepgaand als het onderwerp in de portefeuille valt; beknopt binnen de commissie; bronnen als de gebruiker het debat zelf aanvroeg; vlucht daarbuiten; procedurele punten worden overgeslagen). De host-LLM levert uitsluitend meeting_ids uit lijst_vergaderingen; de tool haalt de gestructureerde vergadering en agenda zelf op. Zo hoeft de host geen markdown terug naar een ongedocumenteerd object te vertalen. Een onbekend ID, een vergadering zonder agenda of een vergadering buiten de horizon geeft een expliciete validatiefout, nooit een plausibel lege notitie. Automatische e-mailbezorging + de vrijdag/maandag-cron zijn aparte infrastructuur.

Positie in de keten: roep eerst mijn_fractie_context aan en neem daaruit de gebruikersnaam en fractienaam over. Vul covered_topics en followed_committees met bevestigde waarden of lege lijsten; verzin ze niet. Gebruik daarna lijst_vergaderingen(na_datum=<vandaag>, voor_datum=<horizon>, sortering='oudste_eerst') en geef de gekozen vergadering_id-waarden door als meeting_ids.

Gebruik wanneer: de gebruiker een fractienotitie/voorbereiding voor de komende vergaderingen wil.

Retourneert: markdown — bolletjes-legenda + agenda-overzicht + per-vergadering detailblok op maat.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
vandaagNo
gebruikerYes
meeting_idsYes
horizon_dagenNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent, non-destructive), the description discloses significant behavioral details: it internally fetches structured meetings and agendas, raises explicit validation errors for unknown IDs or missing agendas, never returns a plausible empty note, and clarifies that email delivery and cron scheduling are separate infrastructure. This fully informs the agent of the tool's internal behavior and failure modes.

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 relatively long, but it is well-structured with clear sections: core function, chain position, usage condition, and return format. The key purpose is front-loaded in the first sentence. While a few phrases (like the parenthetical on Erik's hero-feature) could be trimmed, the structure earns a 4 for being organized and scannable.

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?

Given the complexity of the tool (4 parameters, nested user object, no output schema), the description is remarkably complete. It covers the return format (markdown with legend, overview, and detail blocks), error handling, the necessary preceding calls, and the exact input sources. An agent has all the information needed to invoke this tool correctly.

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

Parameters4/5

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

While the schema has no descriptions for top-level parameters (0% coverage), the description compensates by explaining the key ones: 'meeting_ids' are the selected 'vergadering_id' values from 'lijst_vergaderingen', and the 'gebruiker' object's fields 'covered_topics' and 'followed_committees' should be filled with confirmed values or empty lists, never invented. It does not explicitly explain 'vandaag' or 'horizon_dagen', but these have defaults and are self-explanatory. The description adds meaningful meaning beyond the bare schema.

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 clearly states the tool composes a faction note ('Stelt de fractienotitie samen') and details what that includes: an agenda overview for the next ~2 weeks on the user's portfolio, with status bullets and detail blocks. It is unambiguous about the resource and action, and the detailed explanation distinguishes it from the sibling tools (e.g., 'genereer_raadsstuk' is for drafting council documents, while this is for preparing a briefing).

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?

Explicitly states when to use: 'Gebruik wanneer: de gebruiker een fractienotitie/voorbereiding voor de komende vergaderingen wil.' It also provides a precise workflow: call 'mijn_fractie_context' first, then 'lijst_vergaderingen' with specific parameters, and pass the resulting IDs as 'meeting_ids'. This leaves no ambiguity about the calling sequence and context.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources