Skip to main content
Glama
GuardBee

@guardbee/mcp-security-proxy

Official

agent_graph_auditor__scan_directory

Recursively scan Python directories to detect excessive-agency paths in agent and tool graphs, helping you audit multi-agent workflows for risky permissions.

Instructions

Recursively scan a directory of Python files and report excessive-agency paths found in each. Each file's agent/tool graph is analyzed independently — variable references don't resolve across files, so a Crew/GroupChat whose members are defined in a different file than the assembling call won't be connected.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesAbsolute or relative path to the directory to scan
excludeNoSkip files/dirs whose path contains one of these strings
includeNoOnly scan files whose path contains one of these strings
maxFilesNoMaximum number of files to scan (default: 2000)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.1

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations at all, the description carries the full behavioral burden, and it does disclose a genuinely important limitation: each file is analyzed independently and variable references do not resolve across files, so cross-file Crew/GroupChat assembly is not connected. That is exactly the kind of caveat an agent needs to interpret results correctly. It still omits read-only-ness, performance/scale behavior, and what the report looks like, so it falls short of a 5.

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 sentences, no filler. The core action is front-loaded and the second sentence is a non-obvious caveat that earns its place by preventing misreading of results.

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 4-parameter, no-annotation, no-output-schema scanning tool, the description tells the agent what is scanned, what is reported, and the key analytical limitation. It does not describe the shape of the report or pagination/truncation behavior, which is the main remaining 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 description coverage is 100%, with path, exclude, include and maxFiles all documented in the schema, so the baseline is 3. The description adds no extra meaning about path syntax, exclude/include matching semantics, or the default file cap beyond what the schema already says.

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 (recursively scan), resource (a directory of Python files) and output (excessive-agency paths found in each). It is clearly the batch counterpart to the sibling scan_file/scan_text tools, but it never names them, so the differentiation is implied by the word 'directory' rather than stated.

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 word 'directory' and 'Recursively' imply the right usage context versus a single-file scan, but there is no explicit when-to-use statement, no mention of when to prefer scan_file or scan_text, and no prerequisites. Usage is inferable, not stated.

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