Skip to main content
Glama

Server Details

MCP server teaching AI agents to implement TideCloak: auth, E2EE, IGA, security analysis

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
tide-foundation/raziel-mcp
GitHub Stars
0
Server Listing
Raziel (Tide MCP)

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 3.8/5 across 19 of 19 tools scored. Lowest: 3.2/5.

Server CoherenceA
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.

Available Tools

20 tools
tide_adapterA
Read-only
Inspect

Read an adapter instruction file (AGENTS, CLAUDE, replit)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesAdapter file name. Available: AGENTS, CLAUDE, replit
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by specifying the exact files to read (AGENTS, CLAUDE, replit), which goes beyond the annotation's safety profile.

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 that conveys the essential information without any unnecessary words.

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?

With only one parameter and no output schema, the description adequately covers the tool's purpose and parameter. It does not describe the return format, but given readOnlyHint, the agent can infer file content output; minor completeness 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 coverage is 100%, and the parameter's description already lists the available files. The tool description merely repeats this list, adding no new meaning beyond the schema.

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 verb 'Read' and the resource 'adapter instruction file', then lists specific file names (AGENTS, CLAUDE, replit), which distinguishes it from sibling tools that deal with other aspects of tide.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives; it simply states what it does without context on prerequisites or when not to use it.

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

tide_blast_radiusA
Read-only
Inspect

Run a Blast Radius Assessment of an EXISTING app: an adversarial, vendor-neutral map of where authority is concentrated to a single point (whoever obtains that one thing obtains everything it governs), scored by blast radius (Total/Systemic/Contained/Limited) across three cores — Identity, Governance, Access — and delivered as a director-facing PDF. Phase 1 names no vendor; an opt-in Phase 2 companion explains how TideCloak shrinks each blast radius. Use this when the user wants to 'assess', 'red team', 'threat model', 'find the security gaps in', or make a before/after security case for an existing application.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior5/5

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

The description goes far beyond the readOnly/destructive annotations by explaining the two-phase execution (Phase 1 vendor-neutral, Phase 2 opt-in TideCloak companion), the output as a director-facing PDF, and the scoring methodology across Identity, Governance, and Access. These details prepare the agent for unexpected outputs and post-processing steps.

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?

Three sentences pack a dense but clear description: the first defines the action, definition, scoring, and output; the second explains the two-phase nuance; the third gives usage triggers. Every phrase earns its place without redundancy.

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?

For a tool with no parameters and no output schema, the description covers what, how, and when. It details the assessment focus, scoring, cores, deliverables, and usage scenarios. The only minor gap is how the 'existing app' is specified, but given the empty schema, it likely relies on conversational context, and the description still provides a strong overall picture.

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?

With zero parameters, the schema carries no input information, and the description appropriately focuses on behavior. The baseline for no parameters is 4; the description does not need to clarify parameter semantics, though a note about how the target app is identified (e.g., via context) would be a minor enhancement.

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 opens with 'Run a Blast Radius Assessment of an EXISTING app', clearly stating the action and resource. It further specifies the assessment's adversarial, vendor-neutral nature, scoring categories, delivery format, and phase structure, making it distinct from sibling tools like tide_security_analysis.

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?

The final sentence explicitly states when to use this tool: 'Use this when the user wants to assess, red team, threat model, find the security gaps in, or make a before/after security case for an existing application.' This provides concrete triggers and implicitly excludes new-app scenarios.

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

tide_brandingA
Read-only
Inspect

BRAND THE ENCLAVE FOR THE USER — generate a logo + background and upload them so the Tide login/approval screen is branded. Returns a single ready-to-run command that generates the assets (no image model needed), validates them, uploads both, and saves+signs the IdP settings. Also returns the VERIFIED upload contract (multipart parts, the png/jpg/jpeg/gif/webp allowlist with SVG REJECTED, the 5 MB cap, set-branding = save AND re-sign, IGA-exempt) plus image-model prompts for agents that can generate images. Pass realm/accent/appName to get the command pre-filled. CALL THIS whenever branding, a logo, a background, theming or 'skinning' the enclave or login screen comes up — then RUN the command; do not just describe it.

ParametersJSON Schema
NameRequiredDescriptionDefault
realmNoRealm to brand, e.g. 'myapp'. Fills in the command.
accentNoHex accent colour without '#', e.g. '2f6f4e'. Default 1f6feb.
appNameNoApp name. Deterministically varies the mark's geometry so realms look distinct.
tidecloakUrlNoBase URL. Default http://localhost:8080.
Behavior1/5

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

Annotation contradiction: readOnlyHint=true but the description explicitly states it 'uploads both' files and 'saves+signs the IdP settings', and mentions 'set-branding = save AND re-sign'. This is a write/mutation operation, directly contradicting the read-only annotation.

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 long but front-loaded with the core purpose and each sentence adds functional detail (returns a command, validation, upload contract, prompts). It is slightly verbose but not wasteful; the length is justified by the tool's complexity.

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?

The description is highly complete for a complex tool: it explains the generated outputs (ready-to-run command, verified upload contract, image-model prompts), validation criteria, upload specs, and security exclusions. No output schema exists, so the description fully carries the burden of explaining return values and constraints.

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 coverage is 100% with descriptions for all four parameters. The description adds context by saying 'Pass realm/accent/appName to get the command pre-filled' and details upload constraints like 'SVG REJECTED' and '5 MB cap', enriching the parameter semantics beyond the schema.

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 leads with a clear, specific verb+resource: 'BRAND THE ENCLAVE FOR THE USER — generate a logo + background and upload them'. It explicitly covers branding, logo, background, theming, and skinning, and the 'CALL THIS whenever...' line distinguishes it from siblings by scoping its use case.

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?

The description gives an explicit trigger: 'CALL THIS whenever branding, a logo, a background, theming or \'skinning\' the enclave or login screen comes up'. It also instructs to 'RUN the command; do not just describe it'. However, it does not mention when not to use it or name alternative tools.

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

tide_canonA
Read-only
Inspect

Read a canon file (invariants, anti-patterns, concepts, framework-matrix, feature-mapping, troubleshooting, tidecloak-bootstrap, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCanon file name. Available: agent-authority, anti-patterns, breach-precedents, concepts, custom-contracts, feature-mapping, framework-matrix, hosting-options, iga-change-requests-api, invariants, redirect-handler, security-gap-mapping, security-runtime-probes, tide-neutralization, tidecloak-bootstrap, tidecloak-endpoints, tidify-compatibility, troubleshooting, ux-states, verifiable-claims, version-policy
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the list of canon file types but does not describe return format, error handling, or other behavioral nuances. It provides only minimal additional context beyond annotations.

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?

The description is a single, front-loaded sentence that directly states the tool's purpose. It is concise and free of unnecessary wording, with the 'etc.' being acceptable given the complete enumeration in the schema.

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 the tool's low complexity (one parameter, no output schema), the description plus schema is sufficient for an agent to select and invoke it correctly. The only minor gap is that it does not explicitly state the return value, but 'Read' strongly implies the file content is returned.

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?

The input schema has 100% coverage for the single parameter 'name', including a full list of allowed values. The description merely repeats a subset of these values (e.g., invariants, concepts) without adding any new syntax or semantic detail. Baseline score of 3 applies when schema covers the parameter fully.

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 verb 'Read' and the resource 'canon file', and lists examples of file types. This distinguishes it from sibling tide_* tools by being the only one focused on reading canon files.

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 description implies usage (when you need to read a canon file) but does not explicitly state when to use it over alternatives or mention any exclusions. No sibling tool is referenced as an alternative.

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

tide_choose_playbookB
Read-only
Inspect

Recommend the right playbook for a given situation

ParametersJSON Schema
NameRequiredDescriptionDefault
situationYesDescribe what the builder wants to do, e.g. 'add login to a new Next.js app'
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, implying safe, read-only behavior. The description adds no additional behavioral details (e.g., what happens if the situation is not understood, or how the recommendation is made), so it meets the baseline without adding value.

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?

The description is a single, clear sentence with no extraneous information. It efficiently conveys the tool's purpose.

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

Completeness2/5

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

The description lacks context about the tool's return value or behavior. With no output schema, it should explain what a playbook recommendation entails, but it only states it recommends a playbook. Important details are missing.

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% (the single 'situation' parameter is described). The tool description does not add any meaning beyond the schema's parameter description, so the baseline score of 3 is appropriate.

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 clearly states the tool recommends a playbook for a situation. The verb 'recommend' and resource 'playbook' are specific, and it distinguishes from sibling 'tide_choose_scenario' by focusing on playbooks. However, it does not elaborate on what constitutes a playbook, leaving some ambiguity.

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

Usage Guidelines2/5

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

No usage guidance is provided. The description does not indicate when to use this tool instead of alternatives like 'tide_playbook' or 'tide_list', nor does it mention when not to use it or prerequisites.

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

tide_choose_scenarioA
Read-only
Inspect

Match a user request to a known scenario pattern before falling back to generic playbooks

ParametersJSON Schema
NameRequiredDescriptionDefault
situationYesDescribe the app or problem, e.g. 'build an organisation password manager'
Behavior3/5

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

Annotations already indicate readOnlyHint=true, covering safety. The description adds that it performs matching, which is consistent. It provides limited additional behavioral detail beyond the schema and annotations.

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 sentence of 16 words, directly stating the tool's purpose with no redundancy. Highly concise and front-loaded.

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?

The description does not specify what the tool returns (e.g., scenario name or identifier), leaving an agent without output expectations. Given no output schema and a single input parameter, it is minimally adequate but could be improved by clarifying the return value.

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 100% with a clear description and example for the 'situation' parameter. The tool description adds no further parameter semantics, so baseline score of 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?

The description clearly states the tool matches a user request to a known scenario pattern, providing a specific verb and resource. It hints at a pipeline role ('before falling back') but does not explicitly distinguish from closely related siblings like 'tide_choose_playbook' or 'tide_list_scenarios'.

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 when you have a user request and need to find a scenario, with fallback to generic playbooks. However, it lacks explicit when-to-use/when-not-to-use guidance and does not mention alternatives among siblings.

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

tide_dpop_assetA
Read-only
Inspect

Returns the CONTENTS of public/tide_dpop_auth.html — the DPoP relay page the Tide enclave loads during login — plus its sha256, the required next.config.ts rewrite/CSP wiring, and how to verify. The file is NOT shipped in the @tidecloak/* npm packages and is NOT in the TideCloak container, so there is nowhere else to get it: without this tool people search GitHub and find a STALE copy that posts to window.parent, which breaks the popup fallback and fails login with TIDE-SWE-UNHANDLED. CALL THIS whenever DPoP is enabled (it is on by default), whenever a login fails with TIDE-SWE-UNHANDLED or 'Popup DPoP verification failed to load', and before copying this file from anywhere else.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior5/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: the file is not shipped in npm packages or the container, so this is the only reliable source; using stale copies causes login failures. This goes beyond the annotations by explaining why the tool is critical and what happens if it's not used.

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?

The description is a single dense paragraph of about 100 words, front-loaded with the core action. Every sentence earns its place—purpose, why it's needed, specific use cases. No wasted words.

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 what is returned (contents, sha256, wiring, verification) and why it's needed. Without an output schema, it could be more explicit about the return structure (e.g., object with fields), but it still provides enough context for an agent to understand the tool's value and invoke it correctly.

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?

The input schema has zero parameters and 100% coverage (trivially). Description adds no parameter info because none are needed. Baseline for 0 parameters is 4; no further value needed.

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 verb 'Returns' and the specific resource 'public/tide_dpop_auth.html', along with additional items like sha256, rewrite/CSP wiring, and verification instructions. It distinguishes itself from sibling tools which are about other Tide aspects (adapter, branding, etc.) and not about DPoP authentication assets.

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 provides three specific conditions for calling this tool: when DPoP is enabled (on by default), when login fails with TIDE-SWE-UNHANDLED, or before copying the file from another source. It also contrasts with the alternative (searching GitHub for a stale copy that breaks functionality).

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

tide_gapsB
Read-only
Inspect

Read the gap register — what is still uncertain or unresolved in the pack

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds context about the content (uncertainties/resolutions) but does not elaborate on behavior beyond what annotations imply. No contradictions.

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?

Single sentence with clear verb and subject, front-loaded and efficient. No unnecessary words.

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?

Given no parameters or output schema, and annotations covering safety, the description is minimally adequate. However, it lacks guidance on when to use this tool among many siblings and does not explain the return format or implications of gaps.

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?

There are zero parameters, so schema coverage is 100%. The description does not need to add parameter details. Baseline of 4 is appropriate.

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 clearly states the action ('Read') and resource ('gap register'), specifying it covers uncertain or unresolved items in the pack. It is distinct from most siblings but does not explicitly differentiate from similar read tools like 'tide_list' or 'tide_canon'.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not include any context for appropriate usage, prerequisites, or exclusions.

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

tide_hostingA
Read-only
Inspect

Where TideCloak runs: local Docker vs partner-hosted (Skycloak managed TideCloak-as-a-service). Returns the local-vs-hosted decision with the honest trade-offs, the trust model, the verified Skycloak API reference (correct cluster field names and the required version), and the full provisioning playbook. CALL THIS BEFORE STARTING ANY TIDECLOAK DEPLOYMENT — the choice must be made up front (I-17) because a realm cannot be moved between local and hosted afterwards. Triggers: 'deploy to production', 'deploy TideCloak', 'go live', 'host this somewhere', 'managed option', 'stable URL', 'can someone host TideCloak for us', or any request to stand up an instance where local-vs-hosted has not been settled.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, and the description adds context about the decision's irreversibility and the verified API reference. It also discloses that the tool returns a playbook and trade-offs, which is useful beyond the schema.

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 dense paragraph, but it front-loads the core purpose and uses caps for the critical instruction. The trigger list adds value, though the length could be slightly reduced with better formatting.

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?

With no input schema and no output schema, the description carries the full burden. It covers what the tool does, when to call, why it matters, and trigger examples, making it complete for a decision-documentation tool.

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?

The tool has zero parameters, so the description doesn't need to explain parameter semantics. The baseline for 0 params is 4, and the description focuses on the content returned rather than params.

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 tool's purpose: it returns the local-vs-hosted deployment decision for TideCloak, with specifics on what it includes (trade-offs, trust model, API reference, provisioning playbook). It distinguishes itself from sibling tools by focusing on hosting rather than scenario/playbook selection.

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?

The description explicitly says 'CALL THIS BEFORE STARTING ANY TIDECLOAK DEPLOYMENT' and provides a list of trigger phrases. It also explains the constraint that a realm cannot be moved between local and hosted, making the when-to-use guidance very clear.

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

tide_listA
Read-only
Inspect

List all available content in the Tide agent pack by category

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryYesWhich category to list, or 'all' for everything
Behavior3/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false, covering safety. The description adds context about the data source ('Tide agent pack') but does not elaborate on behavior beyond the schema. It is consistent with annotations.

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?

The description is a single, efficient sentence with no extraneous information. It is front-loaded and directly states purpose.

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?

For a simple list tool with one enum parameter, no output schema, and clear annotations, the description is fully adequate. It defines scope ('in the Tide agent pack') and filtering ('by category'), leaving no gaps.

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 100%, and the description mentions 'by category', aligning with the parameter. However, it does not add additional meaning beyond the schema-provided enum or explain the parameter's role further.

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 'List all available content in the Tide agent pack by category', specifying a specific verb ('list') and resource ('Tide agent pack'), with a filtering dimension ('category'). It distinguishes from siblings like tide_canon or tide_skill, which are individual item tools.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like tide_list_scenarios or other listing tools. It does not mention prerequisites, exclusions, or typical contexts.

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

tide_list_scenariosA
Read-only
Inspect

List all available scenario patterns under reference-apps/

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's safe. The description adds the location constraint ('under reference-apps/'), providing useful behavioral context beyond annotations. However, no additional details (e.g., behavior if no patterns exist) are given.

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?

The description is a single, front-loaded sentence. Every word is necessary and clearly communicates the tool's action and scope. No wasted text.

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 adequately covers the tool's purpose and scope given zero parameters and no output schema. However, it could be more complete by hinting at the output format or any prerequisites (e.g., existence of the directory). Still, for a simple listing tool, it is sufficiently complete.

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?

There are no parameters, so no parameter semantics are needed. The schema coverage is trivially 100%. The baseline score for zero parameters is 4, and the description does not need to add anything further.

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 tool's purpose: listing scenario patterns specifically under the 'reference-apps/' directory. The verb 'List' and resource 'scenario patterns' are specific. Among siblings like tide_list (general listing) and tide_scenario (single scenario), this tool's focus on patterns under a specific path distinguishes it effectively.

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

Usage Guidelines2/5

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

No guidelines are provided on when to use this tool versus alternatives. With 14 sibling tools, explicit usage context or exclusions would be very helpful but are entirely absent.

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

tide_onboardingA
Read-only
Inspect

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.

ParametersJSON 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'.
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.

tide_playbookB
Read-only
Inspect

Read a step-by-step playbook for a specific Tide task

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesPlaybook name. Available: add-auth-nextjs-existing, add-auth-nextjs-fresh, add-rbac-nextjs, bootstrap-realm-from-template, configure-e2ee-roles-and-policies, deploy-forseti-policy, deploy-tidecloak-docker, diagnose-broken-login, diagnose-missing-roles-or-claims, initialize-admin-and-link-account, migrate-from-existing-auth, protect-api-nextjs, protect-aspnet-core-asgard, protect-routes-nextjs, provision-tidecloak-skycloak, setup-forseti-e2ee, setup-iga-admin-panel, start-tidecloak-dev, verify-jwt-server-side
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's a safe read operation. The description adds minimal context by specifying the content is a 'step-by-step playbook', but it does not describe the output format or any other behavioral details. Since annotations cover the safety profile, the description adds only marginal value.

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?

The description is a single, focused sentence with no redundant wording. It is front-loaded with the action verb 'Read' and conveys the essential information efficiently.

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 simple read-only tool with one fully documented parameter, the description is adequate in conveying the purpose and relying on the schema for parameter details. However, with no output schema, the description does not clarify what the playbook content or return structure looks like, leaving some ambiguity about the tool's output.

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 100% and the parameter 'name' includes an explicit list of all available playbook names, providing complete documentation. The description adds no additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

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 clearly states a specific verb ('Read') and resource ('step-by-step playbook for a specific Tide task'), making the core purpose understandable. However, it does not distinguish this tool from sibling tools like tide_choose_playbook or tide_list, which prevents a score of 5.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use it, or how it relates to other Tide tools, leaving the agent without explicit usage direction.

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

tide_promptB
Read-only
Inspect

Read a reusable starter prompt from the pack

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesPrompt file name. Available: add-admin-approval-flow, build-private-customer-portal, migrate-generic-auth-to-tide, red-team-review, secure-existing-app, security-gap-analysis
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's mention of 'Read' aligns. It adds no further behavioral context (e.g., authentication, output format), but does not contradict annotations.

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?

Extremely concise: one sentence with no wasted words. Front-loaded with the primary purpose.

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?

Adequate for a simple read tool with one parameter, but lacks explanation of the return value or any side effects. With no output schema, more context would help.

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 100%; the description does not add meaning beyond the listed options in the parameter's schema. Baseline 3 is appropriate.

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 clearly states the action ('Read') and the resource ('reusable starter prompt'), distinguishing it from sibling tools like tide_list (listing) or tide_playbook (different resource). However, it could be more specific about the 'pack' context.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Sibling tools exist (e.g., tide_list for listing prompts) but the description doesn't provide context for selection.

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

tide_scenarioA
Read-only
Inspect

Read a scenario summary from reference-apps//scenario.md

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesScenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering safety. The description adds the file path but doesn't disclose return format, pagination, or error behavior, so it adds limited value beyond annotations.

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?

The description is a single concise sentence, front-loaded with the action, and contains no extraneous information.

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 simple read operation, the description is mostly adequate, but without an output schema it doesn't specify the return format. Given the many sibling tools, it also doesn't clarify how this summary relates to other scenario files.

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?

The schema provides 100% coverage of the single parameter 'name', including a list of valid values. The description itself doesn't add parameter details, so baseline 3 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 'Read a scenario summary' with a specific file path. This distinguishes it from sibling tools like tide_scenario_manifest or tide_scenario_roles, which read different files.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It doesn't mention scenarios where this should be preferred, nor does it name any exclusions or fallback tools.

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

tide_scenario_bootstrapA
Read-only
Inspect

Read a scenario bootstrap sequence from reference-apps//bootstrap-sequence.md

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesScenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds the exact file path but does not mention return format, error handling, or that it returns the file's raw content. With annotations, this is adequate but not rich.

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?

The description is a single sentence, efficiently front-loaded with the action and resource, containing zero waste. Every word is purposeful.

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 simple read-only tool with one well-described parameter and safety annotations, the description is mostly complete. However, there is no output schema and the description does not state what the return value looks like, leaving a small gap for the agent.

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?

The input schema provides 100% coverage, with a detailed description of the 'name' parameter listing all available scenario names. The tool description adds no additional parameter semantics, so the baseline of 3 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 explicitly states 'Read a scenario bootstrap sequence from reference-apps/<scenario>/bootstrap-sequence.md', providing a specific verb, resource, and file path. This clearly distinguishes it from sibling tools that read other scenario artifacts like manifests or roles.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It simply states what it does without any contextual usage hints.

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

tide_scenario_manifestA
Read-only
Inspect

Read a scenario manifest from reference-apps//manifest.yaml

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesScenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the file path pattern, which is useful behavioral context, but doesn't elaborate on what the manifest contains, how it's returned, or any potential errors (e.g., missing file). This is adequate but not rich.

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?

The description is a single, front-loaded sentence that states the action and target clearly. Every word earns its place; it is appropriately concise and structured with a direct verb-object format.

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 simple read tool with one well-documented parameter and robust annotations, the description provides the essential path context. It doesn't need to explain return values since there is no output schema and the manifest content could be assumed. Given the tool's low complexity, it is quite complete.

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 only parameter 'name' is fully documented with an enumerated list of valid scenario names. The description adds the path template tying the parameter to a file location, which slightly enhances meaning, but baseline is 3 because the schema already does the heavy lifting.

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 clearly states a specific verb ('Read') and resource ('scenario manifest from reference-apps/<scenario>/manifest.yaml'), making it distinct from siblings like tide_scenario (likely reads full scenario) or tide_list. However, it doesn't explicitly contrast with those siblings, so it misses the top score for differentiation.

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 description implies usage for reading a manifest file, and the context of sibling tools (e.g., tide_scenario, tide_choose_scenario) provides some situational awareness. Yet it gives no explicit guidance on when to choose this over alternatives, such as when a user wants just the manifest vs. full scenario details.

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

tide_scenario_rolesA
Read-only
Inspect

Read a scenario role-policy matrix from reference-apps//role-policy-matrix.md

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesScenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds the exact file path structure, providing useful behavioral context beyond the annotations. No contradictions.

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?

One concise sentence that conveys the purpose and resource structure without unnecessary detail.

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?

Simple tool with one parameter and no output schema. The description specifies the target file but does not detail the return format or error behavior. Adequate, but could be slightly more explicit.

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 baseline is 3. The description adds no parameter-specific semantics beyond what the schema already provides.

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 specific verb ('Read') and resource ('scenario role-policy matrix'), with an explicit file path pattern. This distinguishes it from sibling tools like tide_scenario_manifest or tide_scenario.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description only states what it does, not the context or exclusions.

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

tide_security_analysisA
Read-only
Inspect

Analyze an EXISTING (possibly non-Tide) system for security gaps and map them to Tide capabilities. Returns the Security Analyst role instructions, the security gap mapping table (SG-01…SG-18), and the runtime-probe procedures. Use this when the user asks 'do a security analysis', 'where is my auth weak', or 'what would Tide change about my security'.

ParametersJSON Schema
NameRequiredDescriptionDefault
include_runtime_probesNoInclude the runtime-confirmation probe procedures (canon/security-runtime-probes.md). Only relevant when the operator is authorized to probe a live target. Defaults to true.
Behavior4/5

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

Annotations already mark the tool as read-only and non-destructive. The description adds behavioral detail by listing the exact outputs (Security Analyst role instructions, gap mapping table, runtime-probe procedures), which informs the agent of the tool's effect and return structure.

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?

The description is extremely concise: two sentences pack the tool's purpose, output components, and usage triggers. No extraneous words, and information is front-loaded.

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?

Given the tool's complexity and lack of output schema, the description adequately covers its utility, expected inputs, and return values. It provides sufficient context for an agent to decide when and how to use it.

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?

The only parameter (include_runtime_probes) has a detailed schema description covering its meaning, relevance, and default. The tool's description merely echoes this without adding significant new semantics. With 100% schema coverage, the baseline is 3, and the description does not elevate it further.

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 tool's purpose: analyze an existing system for security gaps and map them to Tide capabilities. It uses specific verbs ('Analyze', 'map') and identifies the resource (system security), and distinguishes from sibling tools by focusing exclusively on security analysis.

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?

The description provides explicit usage examples like 'do a security analysis' or 'where is my auth weak', giving clear context for when to invoke the tool. However, it does not specify when not to use it or mention alternative sibling tools for similar queries.

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

tide_skillB
Read-only
Inspect

Read a composable skill definition

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesSkill name. Available: grc-review, tide-diagnostics, tide-integration, tide-learning-capture, tide-mcp-qa, tide-rbac-and-e2ee, tide-red-team, tide-reviewer, tide-route-and-api-protection, tide-scenario-resolver, tide-security-analyst, tide-setup, tide-solutions-architect
Behavior3/5

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

The readOnlyHint annotation already indicates this is a safe read operation, and the description's use of 'Read' aligns with that. However, the description adds minimal behavioral context beyond the annotation—it doesn't mention whether the operation returns raw content, has any side effects, or requires authentication. Given the annotations cover the safety profile, the description is acceptable but not rich.

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?

The description is a single, clear sentence with no unnecessary words. It is extremely concise and to the point, which is ideal for a straightforward read operation.

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 simple tool with one parameter, the description is fairly complete in defining its actionUTE. However, it lacks context on when to use this vs. sibling tools (like tide_list) and does not describe the format or nature of the returned skill definition. This leaves some ambiguity in practical usage.

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 100%, so the parameter 'name' is fully described with a list of valid values. The description itself does not add extra parameter semantics beyond the schema. Since the schema provides the necessary information, the description meeting the baseline is sufficient.

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 'Read a composable skill definition' clearly states the verb (read) and resource (composable skill definition). It is specific enough to understand the tool's function, though it doesn't explicitly distinguish it from siblings like tide_list, which might also involve skills. The parameter description lists available skill names, reinforcing the purpose.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as tide_list or tide_playbook. It doesn't mention prerequisites, exclusions, or typical scenarios. Users must infer that this retrieves a specific skill's definition, but no explicit comparison or use-case context is given.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.