Skip to main content
Glama

Get state

get_state

Reads app store state (Redux/Zustand/custom) as valid JSON, with optional dot-path and depth, and flags mistyped paths via resolved/failedAt so you can inspect state reliably.

Instructions

Read app store state (Redux/Zustand/custom), summarised depth-first inside the app so the result stays valid JSON. Optionally a dot-path (e.g. 'user.name') and a depth (default 3). resolved says whether the path actually walked to a value — a mistyped segment reports resolved:false with failedAt and availableKeys instead of silently looking the same as an honest undefined. Assign your store to globalThis.RNE_STORES for reliable access.

Input Schema

NameRequiredDescriptionDefault
pathNo
depthNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and discloses depth-first summarization to keep JSON valid, default depth, resolved/failedAt/availableKeys error semantics for bad paths, and a store-global prerequisite. It does not explicitly state read-only/no side effects or what happens if the store is not registered beyond 'reliable access'.

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?

Four sentences, front-loaded with purpose, then parameters, resolution behavior, and setup. Each sentence adds useful information with no fluff.

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?

Given no annotations and no output schema, the description is fairly complete: purpose, parameter usage, error-resolution semantics, and store setup. It still leaves some return-shape and side-effect details implicit, so it is not fully comprehensive.

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?

Schema description coverage is 0%, so the description must compensate. It explains both parameters: optional dot-path with example 'user.name' and depth default 3. It does not restate schema bounds (maximum 8, exclusiveMinimum 0), but adds meaningful semantics beyond the raw schema.

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: 'Read app store state (Redux/Zustand/custom)' with depth-first summarization. It does not explicitly contrast with sibling tools like check_state or observe, so the purpose is clear but sibling differentiation is absent.

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?

Implies usage for reading Redux/Zustand/custom stores and includes a setup prerequisite ('Assign your store to globalThis.__RNE_STORES__'). It gives no explicit when-to-use/when-not guidance or alternatives such as check_state, observe, or eval_js.

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