Skip to main content
Glama

Get Eight Sleep User

eight_sleep_get_user
Read-onlyIdempotent

Get Eight Sleep user profile data for a specific user ID or the authenticated user. Returns account and sleep details in markdown or JSON.

Instructions

Return Eight Sleep profile data for a specific user_id (defaults to authenticated user).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
user_idNoEight Sleep user id. Defaults to the authenticated user (from stored token).
privacy_modeNoOptional per-call payload privacy override. Defaults to EIGHT_SLEEP_PRIVACY_MODE or structured.
response_formatNomarkdown

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataYes
endpointYes
privacy_modeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.2.13
  2. Removedv0.2.6
  3. First observedv0.2.5

TDQS

A3.5/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is fully covered and the description does not contradict it. The description adds the default-user behavior as context, but that duplicates the user_id parameter description and discloses nothing about payload shaping by privacy_mode, response content, or other runtime behavior.

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?

A single front-loaded sentence with no filler: the verb, resource, and scoping constraint all come first, and the default behavior is the only extra detail. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-required-param read tool with a present output schema and rich annotations, much is already covered. The clear gaps are the missing sibling differentiation (eight_sleep_get_me / eight_sleep_profile_get) and an explanation of what profile data is returned under each privacy_mode value, both of which an agent would want before invoking.

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 67% (user_id and privacy_mode are described; response_format has only an enum and default). The description restates user_id's defaulting behavior already present in the schema and adds nothing about privacy_mode or response_format, so it compensates little for the undocumented response_format param, though the enum values and default make it largely self-explanatory.

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?

The description uses a specific verb ('Return') and identifies a clear resource ('Eight Sleep profile data') scoped to a user_id with a default behavior. It distinguishes itself from get_me-like siblings only implicitly via the 'specific user_id (defaults to authenticated user)' scoping — it never names a sibling such as eight_sleep_get_me or eight_sleep_profile_get, so an agent must infer the difference.

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 'defaults to authenticated user' phrasing conveys when the tool applies (wanting a specific user's profile or the current user's), but there is no explicit when-not-to-use or alternative routing. With close siblings like eight_sleep_get_me and eight_sleep_profile_get present, the agent gets no guidance to disambiguate between them.

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