Skip to main content
Glama
mcpAD

mcpAD

Find Service Accounts

find_service_accounts
Read-only

List Active Directory accounts with a Service Principal Name (SPN) to identify Kerberoasting risk; optionally scope the query to an OU by DN.

Instructions

Risk: list users with a Service Principal Name (SPN) set.

Any account with an SPN can have a Kerberos service ticket requested for it by any authenticated user, then cracked offline ("Kerberoasting") if its password is weak. Pass base (a DN) to scope to an OU.

Input Schema

NameRequiredDescriptionDefault
baseNo
limitNo
domainNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior3/5

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

The readOnlyHint annotation already establishes that this is a safe read operation. The description adds useful contextual risk information about SPNs and Kerberoasting, but does not describe return behavior, pagination, or how `limit` and `domain` affect results.

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 short, front-loaded with the core action, and each sentence earns its place by either defining the search criterion or explaining why it matters. There is no wasted text.

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 tool has an output schema and readOnly annotation, reducing the description burden. Still, with three parameters and 0% schema description coverage, the description is incomplete because it does not explain `limit` or `domain` semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter meaning. It explains only `base` as a DN used to scope to an OU, while `limit` and `domain` remain undocumented in both the schema and the description.

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 that it lists users with an SPN set, which is a specific verb and resource. It distinguishes the scope from generic user listing by tying results to the Service Principal Name attribute, though it does not explicitly contrast with sibling search/find tools.

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?

Usage is implied by the Kerberoasting risk context and the note to pass `base` to scope to an OU. However, there is no explicit guidance on when to use this instead of alternatives such as `find_users` or `search_ldap`, nor are exclusions stated.

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