Skip to main content
Glama

Get a person

hr_get_person
Read-onlyIdempotent

Everything about one person: their details, their time-off balance of each leave type for a leave year (entitlement, carried over, adjustments, approved, pending, available after pending), the adjustments in it, their pending requests and approved leave from today on, documents with download links, open checklist tasks and direct reports. Free.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "person": "<person>"
    },
    "name": "hr_get_person"
  }
}

Input Schema

NameRequiredDescriptionDefault
yearNoA leave year, named by the year it starts in. Default: the current one.
personYesThe person_id, or their work email.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive behavior, and closed-world scope. The description adds useful behavioral scope: leave balances include pending and approved leave from today onward, documents include download links, and the call is 'Free'. It does not discuss permissions or missing-person behavior.

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 scope and every listed clause is substantive. It is a dense single sentence, but it is not padded and 'Free.' is useful terse cost information.

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?

There is no output schema, so the description must explain the return payload, and it does so in detail. The input schema covers parameter formats and defaults, while annotations cover safety behavior, leaving no major gap for a two-parameter read 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 description coverage is 100%, so the schema already documents the person identifier and leave-year parameter. The description only gestures at 'one person' and 'a leave year', adding little beyond what the schema provides; this is the baseline 3.

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 a single-person retrieval scope and enumerates the returned resources: details, leave balances by type, adjustments, pending/approved leave, documents, open checklist tasks, and direct reports. This distinguishes it from list-oriented siblings such as hr_list_people.

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 gives clear context for using the tool: get everything about one person, optionally scoped to a leave year. It does not explicitly name alternatives such as hr_list_people or hr_list_leave, nor does it state when not to use this tool.

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