Drupal Scout
Search for Drupal module entries with transitive core version requirements to help to upgrade the Drupal Core.
Installation
Using uv (Recommended)
uv tool install drupal-scout
Or run directly without installing:
uvx drupal-scout --help
Using pip
pip install drupal-scout
Quick Start
Get a compatibility report for your current Drupal project:
drupal-scout
Scan a specific module for Drupal 11 compatibility:
drupal-scout --core 11.0.0 --modules drupal/webform
Features
- Asyncio Concurrency: High-performance parallel module scanning using
asyncioto speed up dependency analysis. - Rich TUI Integration: Beautiful terminal output with structured tables and real-time progress bars powered by the
richlibrary. - MCP Server Support: Built-in Model Context Protocol server for integration with AI IDEs (like Claude Desktop or Cursor).
- Environment Diagnostics: Quick self-diagnostic check of the environment and dependencies using the
infocommand. - Multiple Output Formats:
table: High-fidelity color-coded table for human readability.json: Machine-readable raw data for automation scripts.suggest: Generates a suggestedcomposer.jsonwith updated version requirements.
Limitations
- Python 3.11+: The application requires Python 3.11 or higher.
- Composer v2: The application works with Composer-based (Composer v2) Drupal 8+ projects.
Usage/Examples
drupal-scout [-h] [-v] [-d DIRECTORY] [-n] [-l LIMIT] [-f {table,json,suggest}] [-s] [-c CORE] [-m MODULES [MODULES ...]] {info} ...
Arguments
-h, --help: Show help message and exit.-v, --version: Show program's version number and exit.-d DIRECTORY, --directory DIRECTORY: Directory of the Drupal installation (default:.).-n, --no-lock: Do not use thecomposer.lockfile to determine installed versions.-l LIMIT, --limit LIMIT: Concurrency limit for async requests. Default is10.-f {table,json,suggest}, --format {table,json,suggest}: Output format (default:table).-s, --save-dump: Use with--format suggestto save the suggestedcomposer.jsonto disk.-c CORE, --core CORE: Optional Drupal core version override (e.g.,10.0.0).-m MODULES [MODULES ...], --modules MODULES [MODULES ...]: Scan only specific modules, skipping full project discovery.
Subcommands
info: Show diagnostic information about the tool,jqavailability, and the current Drupal environment.
MCP Server Usage
To use Drupal Scout as an MCP server in your AI assistant:
drupal-scout-mcp
Or with uvx:
uvx --from drupal-scout drupal-scout-mcp
Targeted Scan Examples
Scan one specific module with an explicit core version:
drupal-scout --core 10.0.0 --modules drupal/webform
Scan multiple modules and output JSON:
drupal-scout --core 10.0.0 --modules drupal/webform drupal/ctools --format json
Scan modules with auto-detected core from a local directory:
drupal-scout --directory /path/to/drupal --modules drupal/webform
Metadata
Release files for drupal-scout 3.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| drupal_scout-3.0.2.tar.gz | 30.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| drupal_scout-3.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 68.1 kB
Release files / drupal_scout-3.0.2.tar.gz
| Download URL | drupal_scout-3.0.2.tar.gz |
|---|---|
| Size | 30.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
249d40927631cde79c0d18b618e510a22da1b8f2e15261a962d065705cf58e23
|
|
BLAKE2b-256 checksum How to use checksums |
ce763fc4eb83f82705a5ab6c2dcd3c3c827217c63289b03bf3a778d7103d4c90
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
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 Jul 19, 2026.
Transparency logRelease files / drupal_scout-3.0.2-py3-none-any.whl
| Download URL | drupal_scout-3.0.2-py3-none-any.whl |
|---|---|
| Size | 37.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
172ce22f4ddfc629551c931dad90b1bdebfd646b4dc94169cb97dcffdb650c78
|
|
BLAKE2b-256 checksum How to use checksums |
9fc2093294a28f41b1eb53acf986daa81c236376c1caa22cca82210f9aaea147
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
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 Jul 19, 2026.
Transparency log