Skip to main content

Evidence-first, LLM-augmented static code analysis: graph indexing, MCP server, audit workflows

Project description

llm-sca-tooling

Evidence-first, LLM-augmented static code analysis.

llm-sca-tooling gathers typed evidence from your repository — AST symbols, call graphs, SARIF alerts, tests, runtime traces — grades it (parser > analyser > heuristic > unknown), and only then lets an LLM reason over the graded context. Findings carry their evidence grade; the tool never upgrades confidence on its own, and it never edits your source. Humans decide on remediation.

Five product surfaces

  1. MCP server — the primary integration surface: 45+ tools, 14 resources, 12 prompts over stdio or Streamable HTTP. Point Claude Code (or any MCP client) at it and ask questions about your repository with evidence-graded answers.
  2. Workflow orchestrator — bug resolve, patch review, SAST alert repair, implementation check (spec-vs-code compliance), and fault localisation. Every run produces a structured report, a run record, and a harness condition sheet.
  3. Evaluation harness — a T1–T4 benchmark ladder with calibration reports; T1 runs in null mode (no LLM) and gates every CI check.
  4. Operational harness plane — run records, incident tracking, trajectory memory with experience replay, operational reviews, release gates.
  5. Operational guardrails — permission profiles, doom-loop and budget monitoring, governance-drift checks, privacy redaction, session replay.

Install

pipx install llm-sca-tooling          # CLI + MCP server
# optional capabilities:
pipx inject llm-sca-tooling fastembed # semantic retrieval (embeddings)
pipx inject llm-sca-tooling anthropic # live LLM boundaries (llm_mode)

or in a project:

pip install "llm-sca-tooling[embeddings,llm]"

Graph indexing uses universal-ctags (apt install universal-ctags / brew install universal-ctags).

Quickstart

llm-sca-tooling config validate
llm-sca-tooling mcp serve --transport stdio   # start the MCP server

Register with Claude Code:

claude mcp add llm-sca-tooling -- llm-sca-tooling mcp serve

Then, from your MCP client:

register_repo(repo_path="/path/to/repo")
graph_build(repo_path="/path/to/repo")        # async — poll task_status
get_relevant_files(issue_text="NullPointerException in UserService.authenticate")
run_implementation_check(spec="<your architecture doc>", task=true)
run_issue_resolution(issue_text="<bug report>")

LLM mode

Workflows run in null mode by default — deterministic heuristics only, suitable for CI. With the llm extra installed and ANTHROPIC_API_KEY exported, pass llm_mode: true to run_implementation_check to enable the LLM boundaries (clause grounding, contract generation). Runs degrade to null mode when no provider is available and report llm_mode_active so a degraded run is never mistaken for an LLM-graded one. Model selection via LLM_SCA_MODEL (default claude-opus-4-8).

Evidence hierarchy

Grade Source Confidence
parser ctags AST, language servers, exact SARIF locations High
analyser dataflow, cross-file call graph Medium-high
heuristic pattern matching, keyword search, LLM-classified groundings Medium
unknown no hard evidence — reported honestly, never auto-passed Low

Every LLM-derived artefact is fail-closed: unparseable output degrades to the deterministic null path, citations are filtered to evidence actually provided, generated predicates must compile before they count, and LLM groundings carry a derivation="llm" audit field.

Governance

Development of this repository is governed by AGENTS.md: hard constraints (no secrets, write allowlists, deny-by-default egress), a verify-before-commit gate (make verify), live session telemetry, and harness condition sheets for every evaluation and release run.

Documentation

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llm_sca_tooling-0.10.0.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llm_sca_tooling-0.10.0-py3-none-any.whl (526.8 kB view details)

Uploaded Python 3

File details

Details for the file llm_sca_tooling-0.10.0.tar.gz.

File metadata

  • Download URL: llm_sca_tooling-0.10.0.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for llm_sca_tooling-0.10.0.tar.gz
Algorithm Hash digest
SHA256 a0ac6e7f1cdebe177bf335a4a1b5df72f890aa44e55bc5d84d4f30009adfb448
MD5 827fcd8236f6d59328e75b229eb90cc0
BLAKE2b-256 ede8b4a8a430043814e4194a5b5a01258445198e2985924f6b61b093fca9d62c

See more details on using hashes here.

File details

Details for the file llm_sca_tooling-0.10.0-py3-none-any.whl.

File metadata

File hashes

Hashes for llm_sca_tooling-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 63bbaf044d108a1df5d8133e7352ad0e0628d411246d3ecb3d65f8dbcd4b300c
MD5 3cb3cfce45b5e2bc0868ee8fd9442b00
BLAKE2b-256 3ea92e2a41fed1d2fac58b720d228dbca19bbe9a02133a753b2e2243cdbbce61

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page