Skip to main content
Glama

Change database password

db_set_password

Set a new password for a database user and update app config in the same change to prevent losing database access.

Instructions

Set a new password for an existing database user. Update the application config in the same change, or the app will lose the database.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesDatabase id from db_list.
nameNoDatabase name, for confirmation.
passwordYesNew password.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1-alpha.0

TDQS

A3.7/5.0
Behavior4/5

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

Annotations declare non-read-only, non-idempotent, open-world, non-destructive, so the safety profile is covered there. The description adds genuinely new behavioral context: the credential change cascades to the consuming application, and failing to update config breaks connectivity. It does not contradict destructiveHint=false since no data is destroyed.

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?

Two short sentences, zero filler. The purpose comes first and the consequence warning follows immediately, both earning their 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 non-idempotent mutation with annotations and no output schema, the description covers the main operational hazard (config drift). It omits other relevant context such as required permissions, whether active connections are dropped, or rollback behavior, which an agent invoking a credential change would benefit from.

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 all three parameters (id, name, password) are already documented, including the 'id from db_list' cross-reference. The description adds no format, length, or validation detail beyond the schema, so baseline 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?

States a specific verb and resource: 'Set a new password for an existing database user.' The 'existing database user' scoping distinguishes it from root-password tools (danger_mysql_root_password) and from access-grant tools (db_set_access), though it doesn't name those siblings explicitly.

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?

Gives an operational condition ('update the application config in the same change, or the app will lose the database') which implies when this is appropriate, but offers no explicit guidance on when to prefer this over db_set_access or the danger_mysql_root_password siblings.

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