Skip to main content
Glama

security_scan

Scan a codebase for security vulnerabilities with deterministic checks and graph-aware severity scoring. Get ranked findings with attack scenarios and suggested fixes for reachable issues.

Instructions

Scan the codebase for security vulnerabilities using deterministic checks + graph-aware severity scoring. No API key required.

Checks: dependency CVEs, shell injection, hardcoded secrets, path traversal, auth bypass, input validation, information disclosure, cryptography weaknesses, frontend XSS, architecture-level risks.

Graph-aware severity: vulnerabilities reachable from MCP tools or HTTP routes are automatically elevated. A medium shell injection reachable from connect_repo becomes Critical.

Returns ranked findings (Critical → Low) with attack scenarios and suggested fixes. Use --target for single-file scan.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetNoRelative file path to scan. Omit to scan entire repo.
classesNoVulnerability classes to check. Omit for all.
graphAwareNoEnable graph-aware severity elevation (recommended). Default: true.
Install Server

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden and covers key behaviors: deterministic checks, graph-aware severity elevation with a concrete example, and a return format of ranked findings with attack scenarios and suggested fixes. It does not explicitly state whether the scan is read-only or mention limitations, but the language strongly implies a non-mutating analysis.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded: lead purpose sentence, checks overview, graph-aware severity explanation, and return/usage guidance. It is slightly longer than necessary and slightly repeats the schema's target description, but each section earns its place.

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 no-required-param scan tool with no output schema, the description provides enough to invoke it correctly: whole-repo vs single-file behavior, types of checks performed, severity elevation logic, and output shape. It does not specify the exact response format or performance constraints, but nothing essential is missing for basic use.

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 coverage is 100%, so the baseline is 3; the description adds value by explaining --target usage, the effect of graph-aware severity elevation, and a human-readable list of vulnerability classes. It does not perfectly map to the classes enum—code-injection and supply-chain are not mentioned in the description—but it still enriches the schema's terse parameter docs.

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 opens with a specific verb and resource—'Scan the codebase for security vulnerabilities'—and adds distinctive method details ('deterministic checks + graph-aware severity scoring'). It also states the output ('ranked findings (Critical → Low)'), which clearly separates it from sibling tools like get_health_score or find_dead_code.

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?

The description gives clear usage context: scan the whole repo by default, use --target for a single-file scan, no API key required. It does not explicitly name alternatives or exclusion conditions, but its use case is clear enough for an agent to select it appropriately among the listed tools.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/depwire/depwire'

If you have feedback or need assistance with the MCP directory API, please join our Discord server