Skip to main content
Glama
dragosh29

Edays MCP server

by dragosh29

List group types and groups

list_groups
Read-only

Fetches group types (Country, Location, Team) and their groups (England, Nottingham, Programming) with partner IDs from Edays. Use group_type_partner_id to get groups for one type.

Instructions

The group types on the system (Country, Location, Team and so on) and the groups within each (England, Nottingham, Programming), with partner IDs. One call for the types plus one per type for its groups; give group_type_partner_id to fetch a single type.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
group_type_partner_idNoOnly this group type's groups (its partner ID, e.g. loc)
include_contact_detailsNoInclude nothing extra (group names are the system's own text), and stop redacting email addresses, phone numbers and UK postcodes typed into names and other text

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint, openWorldHint), and the description adds useful operational context beyond them: the unusual one-call-per-type amplification pattern and the redaction behavior implied for include_contact_details. It stops short of describing pagination or output shape, but the amplification disclosure is the important behavioral trait here.

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?

Front-loaded with what is returned, then the call pattern, then the parameter hint. No padding sentences, though the parenthetical examples make it slightly denser than needed.

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?

There is no output schema, yet the description conveys what comes back (type names, group names, partner IDs) and the multi-call fan-out needed to assemble groups per type. That is enough for an agent to call it correctly, with only pagination/limits left unspecified.

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 baseline is 3. The description reinforces that group_type_partner_id narrows to a single type's groups, matching the schema, but adds no format or syntax detail beyond it.

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?

Names a specific resource (group types and the groups within each), gives concrete examples (Country, Location, Team; England, Nottingham, Programming), and states the returned field (partner IDs). This clearly separates it from siblings like list_absence_types or list_users.

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?

Explains the working pattern explicitly: 'One call for the types plus one per type for its groups; give group_type_partner_id to fetch a single type.' This tells the agent both the default usage and the narrowing option, though it doesn't state when to avoid the tool or name an alternative for edge cases.

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