scc CLI
scc counts code and comments, estimates complexity, inspects Git history and exposes analysis to agents through built-in MCP.
- 8,860 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- scc reads source and Git history, then exposes statistics and author information to the connected agent through MCP.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/sccDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- scc reads source and Git history, then exposes statistics and author information to the connected agent through MCP.
This is third-party code. Review the repository files before installing.
What it does
Before review, define scope and file exclusions. scc reports repository composition by language and file: code, comments, blanks and complexity estimates. Machine-readable output retains results for comparison. Git history highlights complex frequently changed files and co-change relationships, also available through built-in MCP. Cost, schedule and effort estimates use assumption-based models whose interpretation depends on parameters and project conditions.
Who it is for. Engineering leads assessing repository composition and choosing areas for further review from code and history.
Good fit when
- Inspect code volume by language in an unfamiliar repository.
- Exclude generated and minified files from comparisons.
- Plan review from file complexity and change frequency.
- Retrieve statistics and file relationships through MCP.
Not a fit when
- Line counts would be the sole measure of employee work.
- Modeled cost must replace an evidence-based estimate.
- You need automatic refactoring rather than statistics and review leads.
Example request
Summarize the repository excluding generated files and identify complex frequently changed areas for human review, without rating employees.Limitations
The first installation method requires Go 1.25 or later and the binary must be on PATH. Counts depend on exclusions, language recognition and duplicate or generated-file handling; record settings when comparing runs. Coupling and hotspot analysis require Git history and reflect the selected commit window. Complexity, schedule and cost values are model-based and must be interpreted alongside the code and actual project conditions.
How to disable. Stop scc or remove its MCP client entry. Saved reports and sources remain on disk.
FAQ
How does MCP connect?
`scc --mcp` starts a local stdio server configured as the client’s process.
What does hotspots mean?
It combines file complexity with change frequency over the chosen history window: a review lead, not a defect explanation.
How do I retain script-friendly results?
`scc --format json -o counts.json` saves JSON to counts.json. Use matching exclusions for reports you intend to compare.
Are duplicates counted?
`--no-duplicates` removes duplicate files from statistics. Record whether you used it alongside the report.
Is reported cost an actual quote?
No. It is a model result based on selected project assumptions.
Discussion
No questions or reviews yet.
Related
CLI toolsA local codebase index with ten MCP tools: dependency graph, git history, code health and architectural decisions without re-grepping on every step
Indexes a codebase into a knowledge graph and gives the agent call chains, change blast radius and code search over MCP
Duplicate code detector for 220+ languages with an MCP server for agents and a token-efficient report
Local code structure graph: builds a repository map with tree-sitter and serves the assistant only the context a change actually touches over MCP
The official CodeScene MCP server scores Code Health locally and tells an agent what to refactor and where tech debt hides
A skill that dissects an open-source project's architecture and returns one Markdown report with Mermaid diagrams and a comparison with rivals
README in short
A .sccconfig file controls counting but cannot write a report to disk. File output requires an explicit command-line option such as -o.