Skip to main content

total-recall-scan-py

Python source scanner for Total.Recall. Walks a Python codebase, parses each file with ast, and emits the canonical JSONL records consumed by the Total.Recall MCP server.

This is one of three scanners in the Total.Recall ecosystem:

Language Package Entry point
.NET NuGet TotalRecall.Mcp total-recall scan
Python PyPI total-recall-scan-py (this package) total-recall-py
TypeScript npm @total-recall/scan (planned) total-recall-ts

All three produce identical schema-shaped JSONL — the Total.Recall MCP server is language-agnostic and reads whatever lands in data/<namespace>/. See docs/SCANNER_SCHEMA.md for the contract.

Install

pipx install total-recall-scan-py
# or
uv tool install total-recall-scan-py

Usage

total-recall-py scan \
  --source-root src \
  --coverage coverage.xml \
  --tests tests \
  --namespace myproject \
  --output /path/to/Total.Recall/data

Inputs:

  • --source-root — directory containing your production Python source.
  • --coverage (optional) — path to a Cobertura XML file (coverage.py emits this with coverage xml).
  • --tests (optional) — directory containing pytest test files.
  • --namespace — namespace subdirectory under data/.
  • --output — root data directory (matches TOTAL_RECALL_DATA env var used by the MCP server).

Outputs in <output>/<namespace>/:

  • type-registry.jsonl — every public class / function / dataclass / Protocol / ABC.
  • coverage-gaps.jsonl — uncovered lines per class (when --coverage is supplied).
  • test-inventory.jsonl — pytest test methods by class under test (when --tests is supplied).
  • config.json — persisted scan inputs for total-recall doctor.

Schema

This scanner emits records conforming to schemaVersion: 1. The lang discriminator on every type-registry.jsonl record is python, with these extension fields:

{ "kind": "python", "isDataclass": true, "isFrozen": false,
  "isAbc": false, "isProtocol": false, "decorators": ["@dataclass"] }

Development

git clone https://github.com/monk-eee/Total.Recall.MCP
cd Total.Recall.MCP/src/Total.Recall.Scanners.Python
python -m venv .venv
.venv\Scripts\activate    # Windows
# source .venv/bin/activate  # macOS / Linux
pip install -e ".[dev]"
pytest

License

MIT — see LICENSE at the repo root.

Metadata

Release files for total-recall-scan-py 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for total-recall-scan-py 0.1.1
File Size Uploaded
total_recall_scan_py-0.1.1.tar.gz 22.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for total-recall-scan-py 0.1.1
File Interpreter ABI Platform
total_recall_scan_py-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 43.0 kB

Release files / total_recall_scan_py-0.1.1.tar.gz

Download URL total_recall_scan_py-0.1.1.tar.gz
Size 22.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2b4b37670bd8612088aa171f7bc8ff8b8b0028ea015bca602d401393589afe15
BLAKE2b-256 checksum
How to use checksums
f8ea785c6016a0dddcb02731b8c5d7685d53b513e9782a1d2dc4a59ba7bf092a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 27, 2026.

Transparency log

Release files / total_recall_scan_py-0.1.1-py3-none-any.whl

Download URL total_recall_scan_py-0.1.1-py3-none-any.whl
Size 20.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cb8fce9276f3b0f16dfc0ebf904b0d3dc6f145c8ed16255656f4bfb08cda148c
BLAKE2b-256 checksum
How to use checksums
525f3359707fb2797b834a0fd3faa800b8c66637483631c94ed36a6fdb91f833
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 27, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page