← Back to search

io.github.vola-trebla/env-secret-exposure-analyzer-mcp

vola-trebla Scanned 28d ago

Scans projects for secret exposure: leaked API keys, unprotected .env files, and secrets in logs.

B
87.5 / 100

Versions

0.1.1latest
first seen Jun 5, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 5

scan_for_secrets
annotations: none low

Scan a project directory for hardcoded secrets, API keys, tokens, and passwords. Detects patterns like AWS keys, GitHub tokens, Stripe keys, private keys, and generic high-entropy strings. Returns file path, line number, severity, and a masked preview.

projectPath string
check_gitignore_coverage
annotations: none low

Check whether sensitive files (.env, .env.local, secrets.json, etc.) are properly covered by .gitignore rules. Flags files that contain secrets but could be accidentally committed.

projectPath string
scan_for_log_leaks
annotations: none low

Scan source files for console.log / logger calls that may print environment variables or secrets at runtime. Catches patterns like console.log(process.env.SECRET) or logger.info({ apiKey }) before they reach production logs.

projectPath string
scan_ci_workflows
annotations: none low

Scans GitHub Actions (.github/workflows/*.yml), CircleCI (.circleci/config.yml), and GitLab CI (.gitlab-ci.yml) workflow files for dangerous secret interpolation patterns. Detects ${{ secrets.* }} and ${{ github.token }} used directly in run: steps (log_leak risk — GitHub Actions logs the expanded plaintext) and ${{ github.event.pull_request.* }} / issue / commit content interpolated in shell commands (injection risk — attacker-controlled input). Returns file, job, step, pattern_found, risk, and recommendation.

repo_path string
scan_git_history
annotations: none low

Scan the git commit history of a repository for secrets that were ever committed, even if later deleted. Detects hardcoded API keys, tokens, passwords, and other credentials added in diff hunks across recent commits. Returns each finding with its commit hash, file, line, severity, a masked preview, entropy score, whether the secret is still present in the working tree, and whether rotation is required. Respects .gitleaksignore.

repo_path string

Permissions 3

filesystem low
Server uses filesystem capabilities via: fs sync ops
shell high
Server uses shell capabilities via: child_process, execSync(), spawnSync()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 20

low
Tool 'scan_for_secrets' has no annotations annotation_checker · 100%
low
Tool 'check_gitignore_coverage' has no annotations annotation_checker · 100%
low
Tool 'scan_for_log_leaks' has no annotations annotation_checker · 100%
low
Tool 'scan_ci_workflows' has no annotations annotation_checker · 100%
low
Tool 'scan_git_history' has no annotations annotation_checker · 100%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
info
package.json metadata manifest_parser · 100%
info
Tool: scan_for_secrets manifest_parser · 70%
info
Tool: check_gitignore_coverage manifest_parser · 70%
info
Tool: scan_for_log_leaks manifest_parser · 70%
info
Tool: scan_ci_workflows manifest_parser · 70%
info
Tool: scan_git_history manifest_parser · 70%
info
Transport: stdio manifest_parser · 90%
info
Required env vars (6) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
low
Permission: filesystem access detected permission_analyzer · 90%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 330 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%