Skip to main content
Glama
singlestore-mcp-server

singlestore-mcp-server

by jonasliesas

security_change_script

Read-only

Generate a read-only SQL script for security changes so a DBA can review the exact statements before execution. Includes safe ordering, warnings, and placeholders for passwords; runs nothing.

Instructions

Read-only: one or more changes as a SQL script for review (e.g. by a DBA), instead of running them. The statements are what Run would execute, rebuilt from the cluster state now (each change checked as if the earlier ones had run), in a safe order (creates, grants, revokes, drops) unless keep_order, with a header (connection, connected user, time, one line per change) and each change's warnings as -- WARNING: comments. Runs nothing and needs none of the change privileges. Never takes or writes a password: CREATE USER and a password change get '<set password>' to fill in.

Args:
    actions: The changes, each the same object as for security_change_plan.
    keep_order: Keep the given order instead of the safe order.

Input Schema

NameRequiredDescriptionDefault
actionsYes
keep_orderNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.10.1

TDQS

A4.7/5.0
Behavior5/5

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

Goes well beyond the readOnlyHint annotation: it explains that statements are rebuilt from current cluster state with sequential dependency simulation, discloses the default safe ordering and the effect of keep_order, describes the header and per-change WARNING comments, and states no change privileges are required. It also flags the password redaction behavior ('<set password>'), which is exactly the kind of side-effect detail an agent needs.

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?

Front-loads the most decision-relevant fact ('Read-only:') and then layers ordering, output format, side effects, and args in a tight sequence. Every sentence contributes new information; the Args block mirrors the two parameters 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?

No output schema exists, and the description compensates by describing the returned artifact in detail: a header with connection, connected user, time and one line per change, plus inline WARNING comments. For a two-parameter read-only generator, nothing an agent needs to call it correctly is missing.

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 carries the burden and does so: 'actions' is defined as the list of changes matching security_change_plan's object shape, and 'keep_order' is explained as keeping the given order rather than the safe order (creates, grants, revokes, drops). The internal structure of each action object is only delegated to a sibling tool rather than spelled out, which is the only gap.

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?

States a specific verb and resource: produces a SQL script of pending security changes for review rather than executing them. The phrase 'instead of running them' plus the reference to what 'Run' would execute cleanly separates it from security_change_apply and security_change_plan.

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?

Gives a clear use case (script for DBA review) and implicitly the alternative (executing the changes), and routes the agent to security_change_plan for the shape of each action object. It does not add an explicit 'do not use when...' clause, which keeps it just short of a 5.

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

Deploy Server

Other Tools