Skip to main content
Glama

ARGUS

Autonomous Repository Guardian and Unified Scanner

"A hundred eyes on your codebase."

An MCP server that gives any AI agent complete situational awareness of a codebase — security, quality, architecture, type safety, git history, and dead code — with zero infrastructure.

No server. No database. No CI plugin. No API keys. No data leaves your machine.

npx @cerionautomation/argus

Why this exists

Ask an AI assistant "is my codebase secure?" and it guesses, because it can only see the file you pasted. It cannot see the other 400 files, run your tests, or check your git history.

ARGUS fixes that. Connect it as an MCP server and the agent gets 24 tools that read the whole repository, score it across 10 dimensions, and return structured JSON it can act on.


Related MCP server: arch-viewer

ARGUS vs SonarQube

ARGUS

SonarQube

Setup

npx @cerionautomation/argus

Server + PostgreSQL + CI plugin + admin account

Infrastructure

None

Dedicated host, DB, JVM

Cost

Free, MIT

£15k–£150k/year enterprise

Consumer

AI agents (structured JSON)

Humans (HTML dashboard)

Scan speed

68ms security scan on 99k lines

Minutes; full analysis 10–30 min

Autonomous fixing

Yes — self-healing loop

No

False-positive transparency

critique_report shows every rejection + reason

Manual triage in the UI

Git churn hotspots

Built in

Requires plugin/commercial edition

Dead export detection

Built in

Limited

RAG code retrieval

Built in (local BM25)

Not available

Privacy

100% local

Server-side, often cloud

Offline

Works

Needs the server

Where SonarQube still wins: 30+ language support (ARGUS focuses on TS/JS/Python/Go), decades of rule tuning, compliance certifications, and multi-team dashboards with historical trend reporting. ARGUS is not trying to replace an enterprise quality-gate deployment — it replaces the feedback loop between an AI agent and your code.


Accuracy: measured, not claimed

Most scanners drown you in false positives. ARGUS validates every finding against its own evidence and rejects the ones that don't hold up.

Real result on a 99,681-line Next.js production codebase:

Detector generation

Findings

True positives

Precision

Naive regex (v0)

7

3

43%

Multi-gate + semantic critique (v1)

3

3

100%

The four eliminated false positives were:

  • "select your dates" in FAQ prose flagged as SQL injection

  • select=accessToken in a REST URL flagged as SQL injection

  • A console.log flagged as a hardcoded credential (correctly reclassified as secret-logging)

Every rejection is inspectable via critique_report.

How the accuracy works

1. Multi-gate detection. A SQL injection finding requires three independent gates:

  • A well-formed SQL statement (SELECT … FROM, not the word "select")

  • A query executor within 2 lines (.query(, $queryRaw, knex.)

  • Not a URL or REST query string

2. Entropy checks on secrets. A credential must have a known key prefix (sk-, ghp_, AKIA, AIza) or genuine entropy — mixed case, digits, 20+ chars. Interpolated values, env references, and type declarations are excluded.

3. Semantic critique. Each surviving finding is re-examined against its own captured evidence. If the evidence contradicts the claim, it is rejected with a stated reason.

4. Honest confidence. The confidence number is the share of findings marked confirmed rather than possible — not a cosmetic 100%.


Tools (24)

Diagnosis

  • full_diagnose — everything at once: score, findings, hotspots, dead code, types

  • quantum_score — 10-dimension weighted grade (S/A/B/C/D/F), reproducible

  • swarm_intel — all scanners in parallel + critique loop

  • cheat_sheet — ~150 token repo orientation for an agent

Security

  • security_scan — secrets, SQLi, XSS, path traversal, weak crypto, CORS, open redirect, prototype pollution, TLS

  • standards_check — OWASP Top 10, SOLID, 12-Factor, Clean Architecture

  • dependency_risk — risky packages, wildcard versions, missing lockfile

Quality

  • code_quality — empty catch, console.log, @ts-ignore, any, oversized files

  • type_coverage — TypeScript strictness score

  • memory_scan — listener leaks, missing useEffect cleanup, timer leaks

  • test_coverage — ratio, assertion-free tests, skipped tests

  • dead_exports — exported symbols nothing imports

Git intelligence

  • git_hotspots — files with highest 90-day churn (churn correlates with bugs)

RAG grounding

  • rag_retrieve — BM25 code retrieval, local, zero API calls

  • ground_finding — full enclosing function + every caller of a symbol

  • critique_report — every rejected false positive with its reason

Action

  • auto_diagnose — self-healing loop: diagnose → fix → re-score → iterate

  • verify_all — build, lint, test with captured output

  • risk_assess — 4-dimension risk → Full Autonomy / Mixed / Structured mode

  • gap_analysis — missing CI, linter, README, tsconfig

  • search — ripgrep-powered, 32× faster than grep

  • think — structured chain-of-thought scaffold

  • memory_set / memory_get — cross-session persistence

3 prompts: deep_audit, production_gate, debug_root_cause 3 resources: argus://{path}/health, /summary, /hotspots


Install

Claude Code

claude mcp add argus -- npx -y @cerionautomation/argus

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "argus": {
      "command": "npx",
      "args": ["-y", "@cerionautomation/argus"]
    }
  }
}

From source

git clone https://github.com/CerisonAutomation/argus-mcp
cd argus-mcp && npm install && npm run build

Engineering

  • Zero runtime dependencies beyond the MCP SDK and Zod

  • Circuit breakers on every scanner — an agent never hangs

  • Memory-safe walker — 30MB total / 500KB per file caps, depth-limited

  • Sanitised exec — execFileSync with argument arrays, never shell: true

  • Strict TypeScript — exactOptionalPropertyTypes, noUncheckedIndexedAccess

  • MCP Spec 2025-06-18 — tool annotations, structured content, output schemas


Benchmarks

Measured on a 99,681-line / 631-file Next.js + TypeScript production codebase:

Tool

Time

cheat_sheet

146ms

security_scan

68ms

quantum_score

189ms

git_hotspots

24ms

rag_retrieve

111ms

dead_exports

286ms


Licence

MIT © Cerison Brown

Built by Cerison Brown — SDET | QA Automation Engineer | AI Workflow & Systems Automation Engineer

Available Tools

45 tools
ast_antipatternsAST Anti-PatternsA
Read-onlyIdempotent

Run all built-in tree-sitter anti-pattern rules: empty catch, await-in-loop, dangerouslySetInnerHTML, as any, non-null assertions, eval, unhandled .then(). AST-precise — no regex false positives.

Inputs: path (required).

audit_360360° AuditA
Destructive

Complete end-to-end audit: every scanner, every engine, scored and correlated. Security + AST + secrets + CVEs + IaC + dead code + complexity + test gaps + trend versus last run. This is the single call that tells an agent everything about a codebase.

Inputs: path (required).

auto_diagnoseAuto DiagnoseB
Destructive

Autonomous self-healing: diagnose → safe-fix → re-score → iterate until target score reached.

Inputs: path (required), targetScore, maxIterations.

biome_checkBiome CheckB
Read-onlyIdempotent

Biome lint and format check — Rust-based, roughly 25× faster than ESLint.

Inputs: path (required).

cheat_sheetCheat SheetA
Read-onlyIdempotent

~150 token repo snapshot. Fast orientation for an agent entering an unfamiliar codebase.

Inputs: path (required).

code_qualityCode Quality ScanA
Read-onlyIdempotent

Code quality scan: empty catch blocks, console.log, @ts-ignore, any types, TODO debt, oversized files.

Inputs: path (required).

compare_reportsCompare ReportsA
Read-onlyIdempotent

Compare two recorded runs metric by metric. Every number is classified as better, worse, or unchanged — so you can prove a change improved the codebase rather than claiming it. Omit run ids to compare the two most recent runs of a tool.

Inputs: path (required), tool, toRunId, fromRunId.

complexityComplexity AnalysisA
Read-onlyIdempotent

Per-function cyclomatic and cognitive complexity. Cyclomatic drives the minimum number of tests required; cognitive measures nesting-weighted readability cost.

Inputs: path (required).

critique_reportCritique ReportA
Read-onlyIdempotent

Show exactly which findings were rejected as false positives and why. Full transparency into the validation layer — verify ARGUS's own accuracy.

Inputs: path (required).

cve_scanCVE Scan (Trivy)A
Read-onlyIdempotent

Known CVEs in your dependency tree via Trivy. Returns severity breakdown and every critical vulnerability with its fixed version.

Inputs: path (required).

dead_codeDead Code AnalysisA
Read-onlyIdempotent

Comprehensive dead code detection via import-graph reachability: orphan files never imported, unused exports, unused dependencies, unreachable code after return, commented-out code blocks, and duplicate files. Catches whole dead modules that per-symbol analysis misses.

Inputs: path (required).

dead_exportsDead Export DetectionA
Read-onlyIdempotent

Find exported symbols not imported anywhere in the project — dead code that increases bundle size and maintenance cost.

Inputs: path (required).

dependency_riskDependency RiskA
Read-onlyIdempotent

Analyse package.json for outdated dependencies, missing lock files, and known risky patterns.

Inputs: path (required).

engine_statusEngine StatusA
Read-onlyIdempotent

Which analysis engines are available on this machine (ast-grep, semgrep, gitleaks, trivy, biome, ripgrep, fd) and how to install any that are missing.

Inputs: no named parameters.

find_untestedFind Untested ExportsA
Read-onlyIdempotent

Find every exported symbol with no reference in any test file, ranked by risk. Async, security-adjacent (auth/payment/token/admin), and API-layer exports rank highest.

Inputs: path (required).

full_diagnoseFull DiagnosisB
Read-onlyIdempotent

Complete codebase diagnosis: all scanners + quantum scoring + git hotspots + dead exports + type coverage.

Inputs: path (required).

gap_analysisGap AnalysisA
Read-onlyIdempotent

Structural gap detection: missing CI/CD, linter, TypeScript config, README, test scripts.

Inputs: path (required).

generate_testGenerate TestA
Read-onlyIdempotent

Generate a runnable Vitest scaffold for a specific untested export, with arrange/act/assert structure and TODOs marking the assertions only a human can specify.

Inputs: file (required), path (required), exportName (required).

git_hotspotsGit HotspotsA
Read-onlyIdempotent

Files changed most frequently in the last 90 days. High churn = high risk. SonarQube cannot do this without plugins.

Inputs: path (required).

ground_findingGround FindingA
Read-onlyIdempotent

Ground a specific finding in real code: returns the full enclosing function, every other file referencing the same symbol, and the file's imports. Use this BEFORE acting on any finding to confirm it is real.

Inputs: file (required), line (required), path (required).

infra_scanInfrastructure Scan (AWS/IaC)A
Read-onlyIdempotent

AWS / Azure / GCP / Kubernetes / Docker infrastructure-as-code misconfiguration scanning via Trivy. Catches public S3 buckets, wildcard IAM policies, unencrypted volumes, privileged containers, exposed ports.

Inputs: path (required).

learned_patternsLearned PatternsA
Read-onlyIdempotent

List every false-positive pattern ARGUS has learned to suppress for this repository.

Inputs: path (required).

learn_false_positiveLearn False PositiveA
Destructive

Teach ARGUS that a finding is a false positive. The pattern is remembered in .argus/learned.json and suppressed on every future run — precision improves with use rather than staying static.

Inputs: file (required), path (required), reason (required), category (required).

list_reportsList ReportsA
Read-onlyIdempotent

List every recorded ARGUS run for this repository — run id, tool, date, and git commit. Every scan is persisted to .argus/runs/ as JSON, Markdown, and an HTML dashboard.

Inputs: path (required), tool.

memory_getMemory RecallB
Read-onlyIdempotent

Recall stored values by key or search term. Used for cross-session context.

Inputs: key, search, namespace.

memory_scanMemory Leak ScanA
Read-onlyIdempotent

Detect memory leaks: addEventListener without cleanup, useEffect without return, setInterval without clearInterval.

Inputs: path (required).

memory_setMemory SetA
Destructive

Persist a key-value pair across sessions in .argus/memory/. Use to track scores, decisions, or context between runs.

Inputs: key (required), value (required), namespace.

open_dashboardOpen DashboardB
Read-onlyIdempotent

Return the filesystem path to the latest visual HTML dashboard for a tool, ready to open in a browser or attach to a PR.

Inputs: path (required), tool.

quantum_scoreQuantum ScoreA
Read-onlyIdempotent

10-dimension weighted codebase score with confidence weighting. Grade S/A/B/C/D/F. Reproducible — same codebase always gives same score.

Inputs: path (required).

rag_retrieveRAG RetrieveA
Read-onlyIdempotent

Retrieve the most relevant code chunks for a question using local BM25 ranking. No embeddings, no API calls, no data leaves the machine. Returns full code windows with line numbers so answers are grounded in real code.

Inputs: path (required), query (required), topK.

review_diffReview DiffA
Read-onlyIdempotent

Diff-aware code review of uncommitted changes or a branch comparison. Reviews only ADDED lines — the way a human reviewer reads a PR. Flags new secrets, empty catches, @ts-ignore, XSS sinks, disabled TLS, await-in-loop.

Inputs: path (required), base.

risk_assessRisk AssessmentA
Read-onlyIdempotent

4-dimension risk assessment for a planned task. Returns execution mode: Full Autonomy / Mixed / Structured, with human gate count.

Inputs: path (required), task (required).

secret_scanSecret Scan (gitleaks)A
Read-onlyIdempotent

Entropy-based secret detection via gitleaks. Set includeHistory=true to scan every commit — secrets in git history stay exploitable until rotated, even after deletion from HEAD.

Inputs: path (required), includeHistory.

security_scanSecurity ScanA
Read-onlyIdempotent

Deep security scan with false-positive filtering: secrets, injection, XSS, SQLi, path traversal, weak crypto, CORS, open redirect, prototype pollution.

Inputs: path (required).

semgrep_scanSemgrep ScanB
Read-onlyIdempotent

Semgrep rule-pack scanning with CWE mapping. Configs: p/owasp-top-ten, p/security-audit, p/typescript, p/react, p/nodejs, p/secrets, auto.

Inputs: path (required), config.

standards_checkStandards CheckA
Read-onlyIdempotent

Check against OWASP Top 10, SOLID principles, 12-Factor App, and Clean Architecture. Scored checklist with pass/fail per rule.

Inputs: path (required).

swarm_intelSwarm IntelligenceB
Read-onlyIdempotent

Multi-agent parallel scan with critique loop: security + quality + memory + testing + gaps, deduplicated and false-positive filtered.

Inputs: path (required).

test_coverageTest Coverage AnalysisB
Read-onlyIdempotent

Test coverage analysis: test/source ratio, assertion-free tests, skipped tests.

Inputs: path (required).

thinkChain-of-Thought ReasoningC
Read-onlyIdempotent

Structured chain-of-thought reasoning. Decompose problems, explore alternatives, reach conclusions.

Inputs: problem (required), steps, context.

track_runTrack RunA
Destructive

Record this run's score to .argus/history.json and return the delta versus the previous run. Turns ARGUS from a snapshot into a trend line.

Inputs: path (required).

type_coverageType CoverageA
Read-onlyIdempotent

TypeScript type safety audit: any usage, @ts-ignore, type assertions, strictness score.

Inputs: path (required).

verify_allVerify All ChecksA
Destructive

Run build, lint, and test suite. Returns pass/fail per check with captured output.

Inputs: path (required).

verify_layersMulti-Layer VerificationB
Destructive

Six independent verification gates: type check, lint, build, tests, secret scan, dependency CVEs. Blocking gates (types, build, tests, secrets) must pass to ship. Returns an explicit SHIP or HOLD verdict.

Inputs: path (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.3/5.0

    Scored across 45 tools

    Disambiguation2/5

    Many tools have overlapping purposes, such as verify_all, verify_layers, full_diagnose, and audit_360, all running combined scans, and security_scan, semgrep_scan, secret_scan, cve_scan, and infra_scan all addressing security. While some tools are clearly distinct (memory_get/set, search, ast_search), the boundaries between several scanning tools are ambiguous, leading to potential misselection.

    Naming Consistency4/5

    The naming convention is largely consistent, with most tools following a verb_noun snake_case pattern (e.g., verify_all, dead_exports, type_coverage). A few exceptions like 'think' and 'cheat_sheet' deviate from this pattern, but the overall style is coherent and predictable.

    Tool Count2/5

    With 45 tools, the server is heavily over-scoped. Although it covers a broad domain, the high count combined with many overlapping tools (e.g., multiple aggregate scanners) makes it feel bloated and difficult for an agent to choose the right tool. This is well above the typical range for practical use.

    Completeness4/5

    The server offers comprehensive coverage of code analysis: static analysis, security scanning, dead code detection, complexity, testing, memory, search, and reporting. Minor gaps exist (e.g., no direct dependency update tool), but overall the surface is complete for the stated purpose of a code quality and security server.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to search code by meaning, explore codebase structure, store and query knowledge with temporal facts, and read source code through a set of MCP tools.
      306 npm
      7
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Provides AI-powered architecture analysis and visualization of codebases, exposing 17 MCP tools for querying components, dependencies, and generating interactive diagrams.
      10 npm
      5
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Provides code intelligence for AI coding agents by indexing repositories into a hybrid knowledge graph, enabling agents to query dependencies, impact, and context through 28 MCP tools.
      4
      Apache 2.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI coding agents to perform surgical code analysis, semantic memory, and quality enforcement via 18 specialized MCP tools, with a real-time analytics dashboard.
      67
      MIT