Skip to main content
Glama
shyshlakov

pci-dss-mcp

check_encryption

Scan Go source for weak hash algorithms, hardcoded encryption keys, and plain HTTP URLs. Maps findings to PCI DSS 4.0.1 requirements for compliance validation.

Instructions

Scan Go source files for encryption violations: weak hash algorithms (md5/sha1) with context scoring, hardcoded encryption keys/IVs, and plain HTTP URLs. Default: returns response_shape "summary" with by_severity counts, a capped by_rule histogram (top 10 + more_rules), and top 3 per severity findings - plus a pagination.next_cursor for drill-down. Prefer this for mixed queries; min_severity / rule_filter drop to response_shape "flat" but still carry summary.by_severity + summary.by_rule for full-scan context. Follow the cursor for the full paginated list. Use include_tests / exclude_patterns / min_severity / rule_filter for a filtered flat response. Maps findings to PCI DSS 6.2.4, 4.2.1.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesrequired,Path to the Go project directory to scan for encryption violations
exclude_patternsNoOptional glob patterns to exclude. Supports directory patterns (vendor/) and file globs (*.pb.go). Default: vendor/ generated/ *.pb.go testdata/ mocks/
include_testsNoInclude _test.go files in scan results. Default false excludes test files per industry SAST consensus
include_untrackedNoScan all files including .gitignored. Default false scans only git-tracked files
cursorNoOpaque cursor token from a prior check_encryption response. When set resumes pagination from the stored session cache (10-minute TTL). Leave empty for a fresh scan.
limitNoMaximum number of findings to return per call. Default 0 (summary-first response with next_cursor). To fetch more findings than fit in one response, follow next_cursor; do NOT raise this value to fetch all at once (server caps at the per-tool page size and rejects with LIMIT_EXCEEDS_PAGE_SIZE).
min_severityNoFilter by minimum severity (CRITICAL/HIGH/MEDIUM/LOW/INFO). Setting this forces the flat response shape.
rule_filterNoFilter by rule ID, comma list or /regex/. Setting this forces the flat response shape.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

No annotations provided, so description carries full burden. It transparently explains response shapes (summary vs flat), pagination with cursor and TTL, limit cap behavior, and filtering effects. Also mentions mapping to PCI DSS standards.

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?

Description is detailed and informative but on the longer side. It front-loads the main purpose and then structures details about response shapes and parameters. Could be slightly more concise but remains clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With full schema coverage and output schema present, the description thoroughly explains response shapes, pagination, and behavior under various parameter combinations. It is sufficiently complete for an AI agent to invoke correctly.

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

Parameters5/5

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

Adds significant meaning beyond schema: cursor has 10-min TTL, limit default yields summary and warns against raising it, exclude_patterns defaults, and min_severity/rule_filter force flat response. Schema coverage is 100% but description enriches understanding.

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 clearly states it scans Go source files for encryption violations (weak hashes, hardcoded keys, plain HTTP URLs). It distinguishes from siblings like check_auth_strength and check_secrets_in_configs by focusing on encryption-specific issues in Go code, with unique response shape behavior.

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?

Provides guidance on preferring this for mixed queries, describes when to use min_severity and rule_filter for flat responses, and explains pagination with cursor. However, it does not explicitly state when not to use this tool or mention alternatives among siblings.

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

Install Server

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/shyshlakov/pci-dss-mcp'

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