Skip to main content
Glama

When I Work MCP by usefulapi

List users

wheniwork_list_users
Read-only

List the employees, supervisors, managers and admins in the account, optionally limited to some schedules or searched by name/email. Role codes: 1 admin, 2 manager, 3 employee, 5 supervisor. When I Work: GET /2/users.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
searchNoSearch first name, last name or email.
location_idNoOne or more schedule (location) ids.
only_deletedNoOnly deleted/archived users (supervisor or above).
only_pendingNoOnly pending users.
show_deletedNoInclude deleted users (supervisor or above).
show_pendingNoInclude users who have not accepted their invite (default true).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

A3.5/5.0
Behavior3/5

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

readOnlyHint=true already declares this as a safe read, so the description's added value is the role-code legend (1 admin, 2 manager, 3 employee, 5 supervisor) and the underlying endpoint GET /2/users. It omits pagination behavior and result size limits, which matters for an account-wide list.

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?

Three short sentences, front-loaded with the core action and scope. The role-code legend is dense but useful; the trailing 'When I Work: GET /2/users' is largely redundant given the tool name and annotations.

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?

For a read-only list tool with no output schema and full schema coverage, the description covers scope, filters and role-code interpretation adequately. Only pagination/return-size expectations are absent, which is a minor gap.

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 all six parameters (search, location_id, only_deleted, only_pending, show_deleted, show_pending) are already documented in the schema. The description only restates the schedule and search filters without adding format or default details, so baseline 3 applies.

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?

States a specific verb and resource ('List the employees, supervisors, managers and admins in the account') plus the scoping options (schedules, name/email search). An agent can distinguish it from write tools like wheniwork_create_shift, but it never contrasts itself with the read siblings get_user or list_eligible_users_for_shift.

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

Usage Guidelines3/5

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

The phrase 'optionally limited to some schedules or searched by name/email' implies when the filters are useful, but there is no explicit when-to-use guidance and no exclusions. It does not tell the agent when to prefer this over wheniwork_get_user for a single lookup.

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.