ARGUS
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., "@ARGUS Run a full diagnose and show me the top security risks and dead code"
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.
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/argusWhy 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 |
| 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 |
| 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 injectionselect=accessTokenin a REST URL flagged as SQL injectionA
console.logflagged 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, typesquantum_score— 10-dimension weighted grade (S/A/B/C/D/F), reproducibleswarm_intel— all scanners in parallel + critique loopcheat_sheet— ~150 token repo orientation for an agent
Security
security_scan— secrets, SQLi, XSS, path traversal, weak crypto, CORS, open redirect, prototype pollution, TLSstandards_check— OWASP Top 10, SOLID, 12-Factor, Clean Architecturedependency_risk— risky packages, wildcard versions, missing lockfile
Quality
code_quality— empty catch, console.log,@ts-ignore,any, oversized filestype_coverage— TypeScript strictness scorememory_scan— listener leaks, missinguseEffectcleanup, timer leakstest_coverage— ratio, assertion-free tests, skipped testsdead_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 callsground_finding— full enclosing function + every caller of a symbolcritique_report— every rejected false positive with its reason
Action
auto_diagnose— self-healing loop: diagnose → fix → re-score → iterateverify_all— build, lint, test with captured outputrisk_assess— 4-dimension risk → Full Autonomy / Mixed / Structured modegap_analysis— missing CI, linter, README, tsconfigsearch— ripgrep-powered, 32× faster than grepthink— structured chain-of-thought scaffoldmemory_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/argusClaude 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 buildEngineering
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 —
execFileSyncwith argument arrays, nevershell: trueStrict TypeScript —
exactOptionalPropertyTypes,noUncheckedIndexedAccessMCP 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 |
| 146ms |
| 68ms |
| 189ms |
| 24ms |
| 111ms |
| 286ms |
Licence
MIT © Cerison Brown
Built by Cerison Brown — SDET | QA Automation Engineer | AI Workflow & Systems Automation Engineer
Available Tools
45 toolsast_antipatternsAST Anti-PatternsARead-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).
ast_searchAST Structural SearchARead-onlyIdempotent
Tree-sitter AST structural search via ast-grep. Matches real syntax trees, not text — so patterns can never match inside strings or comments. Use $VAR for one node, $$$ for many. Example: 'try { $$$ } catch ($E) { }'
Inputs: path (required), pattern (required), lang.
audit_360360° AuditADestructive
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 DiagnoseBDestructive
Autonomous self-healing: diagnose → safe-fix → re-score → iterate until target score reached.
Inputs: path (required), targetScore, maxIterations.
biome_checkBiome CheckBRead-onlyIdempotent
Biome lint and format check — Rust-based, roughly 25× faster than ESLint.
Inputs: path (required).
cheat_sheetCheat SheetARead-onlyIdempotent
~150 token repo snapshot. Fast orientation for an agent entering an unfamiliar codebase.
Inputs: path (required).
code_qualityCode Quality ScanARead-onlyIdempotent
Code quality scan: empty catch blocks, console.log, @ts-ignore, any types, TODO debt, oversized files.
Inputs: path (required).
compare_reportsCompare ReportsARead-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 AnalysisARead-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 ReportARead-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)ARead-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 AnalysisARead-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 DetectionARead-onlyIdempotent
Find exported symbols not imported anywhere in the project — dead code that increases bundle size and maintenance cost.
Inputs: path (required).
dependency_riskDependency RiskARead-onlyIdempotent
Analyse package.json for outdated dependencies, missing lock files, and known risky patterns.
Inputs: path (required).
engine_statusEngine StatusARead-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 ExportsARead-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 DiagnosisBRead-onlyIdempotent
Complete codebase diagnosis: all scanners + quantum scoring + git hotspots + dead exports + type coverage.
Inputs: path (required).
gap_analysisGap AnalysisARead-onlyIdempotent
Structural gap detection: missing CI/CD, linter, TypeScript config, README, test scripts.
Inputs: path (required).
generate_testGenerate TestARead-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 HotspotsARead-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 FindingARead-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)ARead-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 PatternsARead-onlyIdempotent
List every false-positive pattern ARGUS has learned to suppress for this repository.
Inputs: path (required).
learn_false_positiveLearn False PositiveADestructive
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 ReportsARead-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 RecallBRead-onlyIdempotent
Recall stored values by key or search term. Used for cross-session context.
Inputs: key, search, namespace.
memory_scanMemory Leak ScanARead-onlyIdempotent
Detect memory leaks: addEventListener without cleanup, useEffect without return, setInterval without clearInterval.
Inputs: path (required).
memory_setMemory SetADestructive
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 DashboardBRead-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 ScoreARead-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 RetrieveARead-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 DiffARead-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 AssessmentARead-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).
searchCodebase Search (ripgrep)BRead-onlyIdempotent
Rust-powered codebase search via ripgrep. 32× faster than grep. Regex, context lines, file type filtering.
Inputs: path (required), pattern (required), context, fileType.
secret_scanSecret Scan (gitleaks)ARead-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 ScanARead-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 ScanBRead-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 CheckARead-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 IntelligenceBRead-onlyIdempotent
Multi-agent parallel scan with critique loop: security + quality + memory + testing + gaps, deduplicated and false-positive filtered.
Inputs: path (required).
test_coverageTest Coverage AnalysisBRead-onlyIdempotent
Test coverage analysis: test/source ratio, assertion-free tests, skipped tests.
Inputs: path (required).
thinkChain-of-Thought ReasoningCRead-onlyIdempotent
Structured chain-of-thought reasoning. Decompose problems, explore alternatives, reach conclusions.
Inputs: problem (required), steps, context.
track_runTrack RunADestructive
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 CoverageARead-onlyIdempotent
TypeScript type safety audit: any usage, @ts-ignore, type assertions, strictness score.
Inputs: path (required).
verify_allVerify All ChecksADestructive
Run build, lint, and test suite. Returns pass/fail per check with captured output.
Inputs: path (required).
verify_layersMulti-Layer VerificationBDestructive
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
Scored across 45 tools
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.
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.
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.
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
Code intelligence platform for AI agents. 20 tools for architecture, security & impact analysis.
Zero-config MCP security scanner for AI-generated apps. 25K+ vulnerability patterns.
AI-powered codebase analysis — call graphs, security, dead code, complexity. 150+ tools.
Governed app access for AI agents: 1,000+ apps & 12,000+ tools via Code Mode MCP.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables 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 npm7MIT
- AlicenseNot gradedqualityDmaintenanceProvides AI-powered architecture analysis and visualization of codebases, exposing 17 MCP tools for querying components, dependencies, and generating interactive diagrams.10 npm5MIT
- AlicenseNot gradedqualityCmaintenanceProvides 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.4Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables AI coding agents to perform surgical code analysis, semantic memory, and quality enforcement via 18 specialized MCP tools, with a real-time analytics dashboard.67MIT