mcp-github-gitlab-pr-security-and-compliance-reviewer
Reviews GitHub pull request diffs for secret leaks, OWASP vulnerabilities, WCAG/EAA accessibility issues, and EU AI Act/database RLS compliance; generates PR risk scores, merge decisions, committable inline suggestion diffs, GitHub Markdown review comments, and SARIF v2.1.0 exports.
Reviews GitLab pull/merge request diffs for secret leaks, OWASP vulnerabilities, WCAG/EAA accessibility issues, and EU AI Act/database RLS compliance; generates PR risk scores, merge decisions, committable inline suggestion diffs, GitLab Markdown review comments, and SARIF v2.1.0 exports.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-github-gitlab-pr-security-and-compliance-reviewerReview this GitHub PR diff for secrets, OWASP issues, and WCAG gaps"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-github-gitlab-pr-security-and-compliance-reviewer
Zero-Cost Deterministic GitHub & GitLab Pull Request Security, OWASP, WCAG 2.2 AA & SOC 2 Compliance Reviewer MCP Server
๐ Live Interactive Storefront & Instant URL Grader: https://ronanchnlps-bit.github.io | ๐ 200 Live Enterprise Audit Dossiers: https://ronanchnlps-bit.github.io/dossiers/index.html
โก Instant Zero-Install Execution (npx)
npx -y github:ronanchnlps-bit/mcp-github-gitlab-pr-security-and-compliance-reviewer --helpRelated MCP server: Security & GRC MCP Server
๐ณ Commercial Licensing & 48-Hour Done-For-You Remediation Sprints (Zero-Call Async Checkout)
Tier | Deliverable | Price | Instant Checkout (PayPal / Card) |
1. Pro Commercial License | Unlimited CI/CD & Production Repos + Commercial SARIF/VPAT Export | $49.00 | |
2. Instant Quick-Fix Patch Pack | Pre-Built Edge Worker + | $99.00 | |
3. 48-Hour Done-For-You Sprint | Full Turnkey Pull Request Remediation + Signed ITI VPAT 2.5 ACR + 7-Day SLA | $1,497.00 | |
4. Continuous Monthly Retainer | Automated Weekly Drift Scans + PR Gatekeeping + Certificate Renewal | $299/mo |
๐ก๏ธ MCP GitHub / GitLab PR Diff Security, Secret Leak & WCAG Compliance Reviewer
Commercial-Grade Model Context Protocol (MCP) Server, CLI & Interactive Studio for Automated Pull Request DevSecOps Auditing
Inspects unified Git diffs (.patch/git diff), staged commits, and CI/CD pull request payloads across 4 Simultaneous DevSecOps & Compliance Gates with Zero API Cost and 100% Local Execution.
๐ผ Commercial Positioning & Problem Solved
Modern engineering teams building with Claude Desktop, Cursor, Windsurf, and GitHub Copilot face a compounding PR review bottleneck:
Secret & Key Infiltration: AI code generation frequently autofills hardcoded API keys (
sk_live_...,AKIA...,ghp_...,eyJ...) into frontend and backend diffs.Injection Vulnerabilities: Accidental unparameterized SQL concatenation,
dangerouslySetInnerHTMLbypasses, and unvalidated SSRF fetches slip past manual reviews.Accessibility & Regulatory Lawsuits: Under the European Accessibility Act (EU EAA) and ADA Title II, missing
alttags, keyboard focus removals (outline-none), and non-interactivedivclick handlers trigger substantial statutory fines.EU AI Act Article 50 & Database Exposure: Added LLM chatbot components lacking mandatory AI transparency notices violate EU Art. 50, and new PostgreSQL tables deployed without Row Level Security (RLS) expose private tenant data through PostgREST/GraphQL.
Existing cloud SaaS solutions (Snyk, SonarCloud) charge thousands per seat and require outbound code uploads.mcp-github-gitlab-pr-security-and-compliance-reviewer runs entirely locally on your workstation or CI runner at zero API cost, delivering instant PR risk scores, committable inline GitHub/GitLab suggestion diffs, and OASIS SARIF v2.1.0 exports.
๐ The 4 Simultaneous DevSecOps & Compliance Gates
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Unified Git Diff (.patch / PR Diff) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโ
โผ โผ โผ โผ
โโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ
โ Gate 1 โ โ Gate 2 โ โ Gate 3 โ โ Gate 4 โ
โ Secret Leaks โ โ OWASP Top 10 โ โ WCAG 2.2 AA โ โ EU AI Act & โ
โ & Credentials โ โ & Injections โ โ & EU EAA โ โ Database RLS โ
โโโโโโโโโฌโโโโโโโโ โโโโโโโโโฌโโโโโโโโ โโโโโโโโโฌโโโโโโโโ โโโโโโโโโฌโโโโโโโโ
โ โ โ โ
โผ โผ โผ โผ
โข AWS AKIA โข SQLi Concat โข Missing img alt โข EU AI Act Art. 50
โข Stripe Live โข eval() / Function() โข Button type/label disclosure notice
โข Supabase JWT โข Raw dangerous HTML โข outline-none focus โข CREATE TABLE
โข OpenAI/Claude โข SSRF fetch(req.query) โข div onClick a11y without ENABLE
โข GitHub PAT โข Path traversal โข Undersized targets ROW LEVEL SECURITY
โข PEM Private Keys โข Insecure Cookies (<44x44px)
โ โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ PR Risk Score (0โ100) & Merge Decision โ
โ โข BLOCK_MERGE_CRITICAL (Score >= 70) โ
โ โข CHANGES_REQUESTED (Score >= 40) โ
โ โข APPROVED_WITH_ADVISORIES โ
โ โข CLEAN_APPROVAL โ
โโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ
โ Committable Fix โ โ GitHub / GitLab โ โ OASIS SARIF โ
โ ```suggestion โ โ Markdown Review โ โ v2.1.0 JSON โ
โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโGate 1: Secret & Credential Leak Detection
AWS Access Keys: Identifies
AKIA[0-9A-Z]{16}and suggestsprocess.env.AWS_ACCESS_KEY_ID.Stripe Live Keys: Intercepts
sk_live_[0-9a-zA-Z]{24,}andrk_live_....Supabase Service Role JWTs: Intercepts high-privilege service-role tokens that bypass RLS.
AI Model Keys: Catches OpenAI (
sk-...,sk-proj-...) and Anthropic Claude (sk-ant-api...).GitHub PATs: Detects classic
ghp_...and fine-grainedgithub_pat_...tokens.Slack Incoming Webhooks: Identifies private team channel webhooks.
Private Cryptographic Keys: Detects committed
-----BEGIN RSA/EC PRIVATE KEY-----.High-Entropy Secrets: Analyzes Shannon entropy ($\ge 3.0$) on sensitive key assignments (
api_key,secret,password).
Gate 2: OWASP Top 10 & Injection Vulnerability Scanner
SQL Injection (CWE-89 / OWASP A03): Catches unparameterized string concatenation and template literal variable interpolations in query executions (
query("SELECT * FROM users WHERE id = '" + id + "'")). Generates parameterized$1, $2replacement diffs.Dynamic Code Execution (CWE-95): Flags
eval(),new Function(), and timer string concatenation.Cross-Site Scripting (XSS / CWE-79): Intercepts
dangerouslySetInnerHTMLlackingDOMPurify.sanitize(...).Server-Side Request Forgery (SSRF / CWE-918): Flags outbound
fetch(req.query.url)andaxioscalls dispatched without hostname allowlist verification.Path Traversal (CWE-22 / OWASP A01): Catches unsanitized file system reads (
fs.readFileSync(path.join('/tmp', req.query.file))).Insecure Cookies (CWE-614 / OWASP A05): Flags
res.cookie()invocations missinghttpOnly: trueorsecure: true.
Gate 3: WCAG 2.2 AA & EU EAA UI Diff Gate
Image Accessibility (WCAG 1.1.1 / EU EAA EN 301 549): Scans added JSX/TSX/Vue/HTML lines for
<img>and<Image>tags lacking analtattribute.Button Name & Type (WCAG 4.1.2): Flags
<button>elements missing explicittype="button"|"submit"or missing accessible screen-reader labels (aria-label).Focus Indicator Suppression (WCAG 2.4.7): Detects
outline-noneorfocus:outline-noneused without visible focus rings (focus-visible:ring-2).Non-Interactive Click Handlers (WCAG 2.1.1): Catches
onClicklisteners placed on<div>or<span>withoutrole="button",tabIndex, or keyboard handlers.Touch Target Size (WCAG 2.2 SC 2.5.8): Flags undersized buttons (
<44x44px) lacking required touch padding.
Gate 4: EU AI Act Art. 50 & Database RLS Diff Gate
EU AI Act Article 50 (Transparency Obligations): Flags new AI/LLM conversational UI components (
<AiAssistant>,<ChatBot>,useChat) that do not disclose to natural persons that they are interacting with an AI system (aria-label="AI-generated response" data-ai-generated="true").PostgreSQL / Supabase Row Level Security (RLS): Flags added
CREATE TABLEDDL migration statements lacking correspondingALTER TABLE <name> ENABLE ROW LEVEL SECURITY;.
๐ ๏ธ MCP Tools Reference (Stdio JSON-RPC 2.0)
When configured inside Claude Desktop, Cursor, or Windsurf, the reviewer exposes 4 Native MCP Tools:
MCP Tool Name | Description | Key Parameters |
| Full 4-gate audit returning |
|
| Fast credential leak scan returning detected keys and exact |
|
| Generates committable GitHub/GitLab |
|
| Generates standard OASIS SARIF v2.1.0 JSON format for GitHub Advanced Security and CI/CD code scanning dashboards. |
|
โ๏ธ Quickstart & Installation
1. Claude Desktop Configuration
Add to your claude_desktop_config.json:
{
"mcpServers": {
"pr-security-reviewer": {
"command": "npx",
"args": ["-y", "mcp-github-gitlab-pr-security-and-compliance-reviewer"]
}
}
}2. Cursor IDE Configuration
In Cursor Settings > Features > MCP, click Add New MCP Server:
Name:
pr-security-reviewerType:
commandCommand:
npx -y mcp-github-gitlab-pr-security-and-compliance-reviewer
3. CLI Usage
Run directly from terminal or in git hooks:
# Audit active unstaged or staged git diff
git diff | npx mcp-pr-reviewer --fail-on CRITICAL
# Audit PR diff between feature branch and main
git diff origin/main...HEAD | npx mcp-pr-reviewer --format markdown
# Audit a saved .patch file and export SARIF report
npx mcp-pr-reviewer --file ./pr.patch --format sarif --output ./pr-security.sarif.json
# Test with built-in enterprise PR scenario
npx mcp-pr-reviewer --preset 1 --format markdown
# Launch/build interactive Dark UI Studio
npx mcp-pr-reviewer --studio๐ค GitHub Actions CI/CD Integration
Block insecure pull requests automatically in your repository:
# .github/workflows/pr-security-gate.yml
name: PR DevSecOps & Compliance Gate
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
security-audit:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
security-events: write
steps:
- name: Checkout Code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Generate PR Unified Diff
run: git diff ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} > pr.diff
- name: Run MCP PR Reviewer Audit
run: |
npx mcp-github-gitlab-pr-security-and-compliance-reviewer \
--file pr.diff \
--format sarif \
--output pr-audit.sarif.json \
--fail-on CRITICAL
- name: Upload SARIF to GitHub Code Scanning
if: always()
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: pr-audit.sarif.json๐จ Interactive Studio (dist/mcp-pr-security-studio.html)
The package includes an Interactive Dark UI PR Diff Security & Compliance Studio adhering to strict Frontend Craftsmanship standards:
Zero generic AI tropes: Clean
#090D14canvas,#111827surface,1px #1E293Bborders, and high-contrast semantic tokens (Emerald#10B981, Rose#F43F5E, Amber#F59E0B, Sky#0EA5E9).4 Built-In Enterprise Scenarios: Switch between critical leaks, AI Act transparency issues, Express SSRF risks, and 100% clean production PRs with one click.
In-Browser Diff Auditing: Paste any custom git diff and audit it instantly in-browser.
One-Click Exports: Copy committable GitHub suggestions, full PR review comments, or download standard SARIF v2.1.0 reports.
To open the studio:
npm run demo
# Open dist/mcp-pr-security-studio.html in your browser๐งช Comprehensive Verification Suite
Product 62 is backed by 45 automated tests covering line number tracking, all 4 gates, committable suggestions, SARIF schema compliance, MCP JSON-RPC protocol, and CLI execution:
npm test -- --run โ tests/pr-diff-engine.test.js (45)
โ Unified Git Diff Parsing & Hunk Extraction (6)
โ Gate 1: Secret & Credential Leak Detection (9)
โ Gate 2: OWASP Top 10 & Injection Vulnerability Scanner (8)
โ Gate 3: WCAG 2.2 AA & EU EAA UI Diff Gate (5)
โ Gate 4: EU AI Act Art. 50 & Database RLS Diff Gate (4)
โ Risk Scoring, Merge Decisions & Suggestion Formatting (5)
โ SARIF v2.1.0 Export (2)
โ MCP Server & Tool Handlers (5)
โ Interactive Studio HTML Generation (1)
Test Files 1 passed (1)
Tests 45 passed (45)๐ License & Commercial Support
Licensed under the MIT License.
Part of the Prong 2 Commercial Marketplace Suite. Available for standalone enterprise licensing, custom gate rule authoring, and private MCP deployment on Smithery.ai and Glama.ai.
Available Tools
4 toolsexport_pr_sarif_reportB
Converts git diff audit results into standard OASIS SARIF v2.1.0 format for native integration into GitHub Advanced Security, GitLab Code Quality, and CI/CD security dashboards.
| Name | Required | Description | Default |
|---|---|---|---|
| diff | Yes | Unified git diff string to audit and export as SARIF v2.1.0 JSON. | |
| toolName | No | Optional custom tool name for the SARIF driver. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses the output format (SARIF v2.1.0) and target consumers, but leaves key behavior unstated: whether the tool performs the audit itself or only formats pre-computed results, whether it writes a file or returns a string, and whether any permissions or side effects apply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the conversion and immediately names the output standard and integrations; no wasted wording. Mildly loose phrasing ('git diff audit results') is the only blemish.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no annotations and no output schema, the definition covers what the output is but not how it is delivered (returned JSON vs. written artifact) or how the audit step relates to the conversion, leaving an agent to infer the return behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (diff, toolName) are already documented in the schema. The description adds no meaning beyond that baseline and does not explain the optional toolName driver field or expected diff format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Converts') and resource (git diff audit results) plus a concrete output standard (OASIS SARIF v2.1.0). Slight imprecision: the input schema says the parameter is a raw unified diff, not 'audit results', and no sibling (scan_diff_for_secrets, review_git_diff, generate_github_pr_suggestions) is named for differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is only implied through the destination list (GitHub Advanced Security, GitLab Code Quality, CI/CD dashboards), which suggests 'use when you need SARIF output'. There is no explicit when-to-use vs. the three sibling tools and no statement of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_github_pr_suggestionsB
Generates committable GitHub/GitLab inline review suggestions (```suggestion blocks) mapped to exact target files and new-file line numbers for all security, injection, WCAG, and AI Act compliance findings.
| Name | Required | Description | Default |
|---|---|---|---|
| diff | Yes | Unified git diff string to generate committable code suggestions for. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the output shape (```suggestion blocks anchored to exact target files and new-file line numbers) and the finding taxonomy, which is genuinely useful. However, it does not say whether anything is posted back to GitHub/GitLab or whether output is purely returned text, nor does it mention repo context requirements, size limits, or determinism of the generated suggestions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tightly packed sentence with the artifact type front-loaded and no redundant filler. It is dense but every clause carries information; the only mild cost is that the finding list and mapping details run together in a single breath.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must carry the return contract, and it only partially does โ it names the artifact (suggestion blocks mapped to file/line) but not the container format (markdown text, JSON array, etc.) or how multiple findings are ordered/grouped. For a moderately complex generation tool that's adequate but leaves a real gap an agent would want closed before invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter has 100% schema description coverage ('Unified git diff string'), so the schema already does the heavy lifting. The description adds only the notion that findings must map to new-file line numbers, not any diff format or syntax guidance beyond the schema; baseline 3 applies for this near-zero parameter count.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and artifact: 'Generates committable GitHub/GitLab inline review suggestions (```suggestion blocks)' mapped to files and line numbers, and it scopes the findings to security, injection, WCAG, and AI Act categories. This clearly separates it from scan_diff_for_secrets and export_pr_sarif_report, though it never names review_git_diff as the non-suggestion alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the word 'committable' hints that this is the tool to pick when you want apply-ready patch suggestions rather than a plain review or SARIF export. There is no explicit when-to-use statement, no prerequisite (e.g., must the diff be unified/complete?), and no named alternative to route away from.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
review_git_diffA
Performs a full multi-gate DevSecOps and compliance audit of a unified git diff (.patch / git diff / PR payload). Returns prRiskScore (0-100), mergeDecision (BLOCK_MERGE_CRITICAL, CHANGES_REQUESTED, APPROVED_WITH_ADVISORIES, CLEAN_APPROVAL), categorized findings, and a formatted GitHub review comment.
| Name | Required | Description | Default |
|---|---|---|---|
| diff | Yes | The unified git diff string to audit (e.g. output from git diff, git show, or PR .patch). | |
| failOnSeverity | No | Minimum severity required to trigger a blocking merge decision (default: CRITICAL). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add real value by disclosing the decision model (BLOCK_MERGE_CRITICAL through CLEAN_APPROVAL) and that it returns a formatted comment rather than posting one. However, it omits operational traits an auditor would need: whether external services are contacted, diff size limits, latency, or determinism.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences, front-loaded with the action and followed by the return contract; nothing is redundant. The enum list is verbose but functional, and the jargon-heavy phrasing is the only mild drag.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description compensates by naming the primary return fields and the full decision vocabulary, which is the main thing an agent needs. It falls short only on the failOnSeverity/threshold relationship and any practical limits on diff size or cost.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters are fully documented in-schema, so baseline 3 applies. The description never mentions failOnSeverity, which materially changes which mergeDecision tier fires โ a missed opportunity to explain how the threshold interacts with the returned decision.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource โ auditing a unified git diff (.patch / git diff / PR payload) โ and enumerates concrete outputs (prRiskScore, mergeDecision tiers, findings, formatted review comment). It implicitly distinguishes itself from scan_diff_for_secrets by calling itself a 'full multi-gate' audit, but never names siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: 'full multi-gate DevSecOps and compliance audit' suggests this is the comprehensive option versus narrower siblings, but there is no explicit 'use this when / use X instead' guidance or stated prerequisites. An agent must infer the routing from wording rather than being told.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_diff_for_secretsB
Scans added git diff lines for hardcoded credentials (AWS, Stripe, Supabase JWT, OpenAI, Anthropic, GitHub PAT, Slack webhooks, PEM keys, high-entropy secrets) and returns exact .env replacement diffs.
| Name | Required | Description | Default |
|---|---|---|---|
| diff | Yes | Unified git diff to inspect for credentials and secret leaks. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden: it discloses the detection categories and the return artifact (replacement .env diffs), which is genuinely useful. It does not state that the operation is non-mutating/read-only, whether findings include line numbers or severity, or how false positives/high-entropy matches are handled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence, front-loaded with the verb and scope, with the detection list and output type attached without filler. Every clause earns its place and nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only analysis tool with no output schema, the description covers input expectations and the shape of the result (replacement diffs) well enough to call it. Missing only the reporting details (line references, severity, empty-result behavior) that an agent would want before relying on the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a single required parameter, so the schema already defines that a unified git diff goes in. The description adds only a slight nuance by emphasizing 'added' lines are scanned, which implies context lines are ignored; nothing beyond that is contributed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('scans') plus resource ('added git diff lines') and enumerates the credential families it detects, then names the deliverable ('.env replacement diffs'). It is unmistakably distinct in intent from review_git_diff, but never names or contrasts with that sibling, so differentiation is inferred 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use / when-not-to-use guidance and no mention of the sibling tools (review_git_diff, generate_github_pr_suggestions) that an agent must choose between. The only usage signal is 'added git diff lines', which narrows scope but does not tell the agent when this tool is the right pick.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v1.0.0- First observed
export_pr_sarif_report - First observed
generate_github_pr_suggestions - First observed
review_git_diff - First observed
scan_diff_for_secrets
TDQS
Scored across 4 tools
The tools target mostly distinct outputs: secret scanning with .env replacements, full diff audit, inline review suggestions, and SARIF export. There is minor potential overlap because review_git_diff performs a broad security audit that may include secret-related findings, but the specialized replacement-diff behavior of scan_diff_for_secrets helps distinguish it.
All tool names use snake_case and begin with a clear action verb: scan, review, generate, export. The object/context phrasing varies slightly but remains predictable and readable.
Four tools are well-scoped for a focused PR security and compliance review workflow. Each tool has a distinct role in the pipeline: detect secrets, audit the diff, generate suggestions, and export findings.
The surface covers the core review flow from diff input through secret detection, audit, remediation suggestions, and SARIF export. Minor gaps remain around directly fetching PRs/diffs or posting review comments back to GitHub/GitLab, but these may be outside the intended diff-processing scope.
Maintenance
Related MCP Connectors
Risk-scan a diff, flag AI-generated-code tells, find secrets. 5 of 7 tools need no account.
Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.
Code review for diffs: rule-based checks for leaked secrets, unsafe migrations and more.
Security scanner for AI-written code: SAST, secrets, dependencies, IaC, containers and DAST.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI-powered, zero-trust code review with multiple models, supporting single files, git diffs, and multiple files, with security, performance, and architecture checks across 10+ languages.15MIT
- FlicenseNot gradedqualityDmaintenanceEnables local security scanning and compliance gap analysis for code and text, detecting secrets, PII, and OWASP vulnerabilities, and assessing readiness across major frameworks like NCA, ISO 27001, NIST CSF, and SOC 2.-
- AlicenseDqualityDmaintenanceEnables AI agents to perform security audits on pull request diffs by detecting secrets, dangerous code patterns, and new dependencies, outputting structured JSON for generating PR review comments.1MIT
- FlicenseNot gradedqualityAmaintenanceAutomated AI pull request code review, zero-day secret leak scanner, SQL injection detector, and 1-click suggested diff fixes for Claude Desktop & Cursor IDE.-