Skip to main content
Glama

tide_onboarding

Read-only

STOP KEYCLOAK'S 'UPDATE ACCOUNT INFORMATION' PAGE and collect the details in-app instead. Tide asserts ONLY a username (the vuid) -- no email, no name -- so Keycloak blocks new users on an unstyled form showing a 64-hex username. Returns: a read-only DIAGNOSTIC that identifies which of FOUR mechanisms is causing the page (they need different fixes), the script that fixes it, and a ready-to-drop React modal that collects the details AFTER login via the Account API. CALL THIS whenever signup, onboarding, 'Update Account Information', a profile/details form, or 'what users see after they create an account' comes up -- and ALSO proactively once a realm is bootstrapped, because the default is that every new user hits that page.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
realmNoRealm, e.g. 'vialproof'. Fills in the commands.
fieldsNoWhich fields to collect. ASK THE USER FIRST — do not guess. Default ['firstName','lastName'].
appNameNoApp name, e.g. 'Mood Garden'. Used in the modal's copy.
frameworkNoControls the mounting snippet. Default nextjs-app.
tidecloakUrlNoBase URL. Default http://localhost:8080.
componentPathNoWhere to WRITE the component, e.g. 'src/components/ProfileOnboarding.tsx'.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Added

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, so the description aligns by calling it a 'read-only DIAGNOSTIC'. It adds context about the four mechanisms and the returned artifacts (script, modal). It doesn't explicitly state it won't modify anything, but the read-only attribute covers that. No contradiction.

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 a single block but clearly explains the purpose, return content, and usage triggers. It's detailed but not overly verbose. Could be structured with bullets, but it's effective.

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?

The description explains the diagnostic nature, the four mechanisms, and the proactive call scenario. However, it doesn't specify output format or error handling, but given the read-only annotation, it's adequate.

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?

All 6 parameters have descriptions in the schema, covering fields, appName, framework, etc. The description mentions 'fields' implicitly but doesn't elaborate beyond schema. Since schema coverage is 100%, a score of 4 is appropriate.

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 the specific purpose: stopping Keycloak's 'Update Account Information' page and providing a diagnostic plus a modal to collect details in-app. It names the exact resource and what the tool returns, distinguishing it from sibling tools (which are all different tide_* services).

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

Usage Guidelines5/5

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

Explicitly says 'CALL THIS whenever signup, onboarding, 'Update Account Information', a profile/details form, or 'what users see after they create an account' comes up' and even suggests proactive use after bootstrapping. This is clear usage guidance.

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.

TDQS

A3.7/5.0
Disambiguation4/5

Most tools have clearly distinct purposes: reading specific document types (adapter, canon, gaps, playbook, etc.), performing assessments (blast_radius, security_analysis), branding, deployment decision, and listing content. However, some reading tools like tide_canon and tide_gaps could be confused, and the multiple scenario-related tools (scenario, bootstrap, manifest, roles) require careful reading of descriptions to differentiate.

Naming Consistency4/5

All tools use the 'tide_' prefix with snake_case, which provides a strong pattern. However, the naming mixes nouns (tide_canon, tide_gaps) with verb phrases (tide_choose_playbook, tide_list), and some tools like tide_dpop_asset are less intuitive. The pattern is mostly consistent but not strictly verb_noun.

Tool Count3/5

With 19 tools, the set is on the higher end for a single server. While many are necessary for the broad scope of reading various reference materials and performing analyses, the count feels slightly excessive. A few tools could be consolidated or removed to improve focus.

Completeness4/5

The tool surface covers reading all major reference documents, performing security assessments, branding, deployment decisions, and scenario matching. For the stated purpose of a 'Tide agent pack', it appears comprehensive. Minor gaps might include a tool for overall system health or status, but the core workflows are well-covered.