Skip to main content
Glama
Andrian17

mssql-mcp-server

by Andrian17

mssql_manage_users

Create, drop, and alter SQL Server logins and database users, plus grant or revoke permissions on schemas, tables, and other objects.

Instructions

Manage SQL Server logins, database users and permissions - create, drop, alter users, grant/revoke permissions. Examples: operation="create" with username="app_user", password="...", operation="grant" with username, permissions, target, targetType

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
loginNoEnable/disable the login
schemaNoSchema of object targets (defaults to dbo); filter for get_permissions
targetNoTarget object/schema/database name (for grant/revoke operations)
cascadeNodrop: transfer owned schemas to dbo first; revoke: CASCADE
inheritNoAccepted for compatibility; reported as unsupported
createdbNodbcreator server role (unsupported on Azure SQL Database)
ifExistsNoInclude IF EXISTS clause (for drop operation)
passwordNoPassword (required for create; optional for alter)
userTypeNologin = server login + database user; contained = database-scoped user; auto = contained on Azure SQL Database, login elsewhereauto
usernameNoUser name (required for create/drop/alter/grant/revoke, optional filter for get_permissions/list)
operationYesOperation: create (login + user, or contained user), drop, alter, grant, revoke, get_permissions, list
superuserNosysadmin server role (db_owner on Azure SQL Database)
createroleNosecurityadmin server role (db_securityadmin on Azure SQL Database)
targetTypeNoType of target (for grant/revoke; filter for get_permissions)
validUntilNoAccepted for compatibility; reported as unsupported
permissionsNoPermissions to grant/revoke
replicationNoAccepted for compatibility; reported as unsupported
connectionLimitNoAccepted for compatibility; reported as unsupported
withGrantOptionNoAllow the user to grant these permissions to others (for grant operation)
connectionStringNoSQL Server connection string (optional; requires --allow-tool-connection-string)
includeSystemRolesNoInclude system principals (for list operation)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions potentially destructive operations like drop and revoke but does not disclose side effects, required privileges, Azure SQL differences, behavior of compatibility-only parameters, or consequences like cascading. The schema fields hint at these but the description itself is thin.

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 concise sentences with no filler. The first sentence defines the tool's purpose and scope; the second provides concrete example parameter groupings. The most important information is front-loaded.

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?

This is a complex 21-parameter tool with no output schema and no annotations, yet the description only covers two operation examples. It does not explain operation-specific required parameters, return behavior, Azure SQL behavioral differences, or how unsupported compatibility parameters are handled. Given the tool's complexity, the description is under-specified.

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 100%, so the baseline is 3. The description adds value by showing realistic parameter combinations: operation='create' with username/password and operation='grant' with username, permissions, target, targetType. This helps the agent understand how parameters relate to operations beyond the individual schema descriptions.

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 names a specific resource domain (SQL Server logins, database users, permissions) and enumerates exact operations (create, drop, alter, grant, revoke, get_permissions, list). This clearly differentiates it from sibling tools like mssql_manage_schema or mssql_execute_query by scope and action type.

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 use for user and permission administration through its operation list and examples, but it does not explicitly state when to choose this tool over alternatives like mssql_execute_query or mssql_execute_mutation. No exclusion conditions or alternative tool references are given, leaving selection to inference.

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