Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: Drupal 10.6.17 Update released for Drupal core (10.6.17)! Release: Linkit 7.0.17 Minor update available for module linkit (7.0.17). Release: Raven: Sentry Integration 7.6.0 Minor update available for module raven (7.6.0). Release: Geocoder 8.x-4.36 Minor update available for module geocoder (8.x-4.36). Release: Copyright Footer 3.4.0 Minor update available for module copyright_footer (3.4.0). Release: Shortcode Gmap 3.0.1 Minor update available for module shortcode_gmap (3.0.1). Release: IDNA Convert Service (punycode) 2.0.6 Minor update available for module idna (2.0.6). Release: IDNA Convert Service (punycode) 2.0.5 Minor update available for module idna (2.0.5). Usage Milestone: Schemata Module schemata crossed 1,000 active installs. Module Revived: Backlinks Index 1.1.5 Module backlinks_index updated after 7 months of inactivity (1.1.5).

Tool Shop

No security coverage

Part of the Tool ecosystem · 5 projects

View on drupal.org

Tool Shop provides developer-only tools for operations that normally require code, CLI or direct database access: raw configuration and state, queue runners, cache and router rebuilds, module installation, and log access. It is built on the Tool API, so its tools work with any Tool API consumer, such as AI agents, MCP clients and ECA.

Tool Shop is for development environments only. Install it as a development dependency so that production builds never contain it.

Tool Shop or Tool Belt?

Tool Shop is the developer-focused companion to Tool Belt. The two projects are split by how access is authorized:

  • Tool Belt mirrors the administrative interface. If a core admin screen can do something under a permission, Tool Belt provides a dedicated tool that checks the same permission.
  • Tool Shop mirrors code, CLI and database access. Operations with no meaningful granular permission belong here. The closest permission available amounts to "trust this account like the site owner".

For example, adding a field with Tool Belt checks the same field administration permissions as the Field UI. Writing the same field configuration directly with Tool Shop bypasses those forms and permissions entirely.

Security

Tool Shop is protected by three independent layers. None of them replaces the others.

  1. Development dependency only. Install with composer require --dev drupal/tool_shop. Production builds created with composer install --no-dev then don't contain the code at all, rather than merely having it disabled. This is the same approach the Devel module uses.
  2. Settings gate. No tool runs unless settings.php contains $settings['tool_shop_enabled'] = TRUE;. That setting can't be changed through the UI, a configuration import or the database, so enabling the tools requires code access. The gate is checked twice: before a tool is offered, so tools behind a closed gate are left out of AI function lists, and again before a tool runs.
  3. Restricted permissions. Each tool has its own permission, marked as restricted. If Tool Shop is accidentally enabled in production, its tools are still limited to trusted administrators.

Tools for arbitrary PHP execution and raw SQL queries are permanently out of scope. They will never ship, even behind these gates.

Submodules

The base module provides no tools on its own. Enable only the submodules you need.

Tool Shop - Configuration

Read, write, delete and list raw configuration, bypassing all administrative forms and validation.

Tools provided: Get configuration, Set configuration, Delete configuration, List configuration names.

For more details see the README file.

Tool Shop - State

Read, write and delete values in the State API, which has no administrative interface.

Tools provided: Get state, Set state, Delete state.

For more details see the README file.

Tool Shop - System

Full rebuilds, equivalent to drush cache:rebuild. The cache rebuild also rebuilds the container and theme registry, going beyond the administrative "Clear all caches" button.

Tools provided: Rebuild caches, Rebuild router.

For more details see the README file.

Tool Shop - Queue

List queues, process queue items through their workers within a time and item limit, or discard a queue's pending items.

Tools provided: List queues, Run queue, Clear queue.

For more details see the README file.

Tool Shop - Module

List available modules and install or uninstall them. Installing runs the module's install hooks. Uninstalling deletes the module's configuration and data.

Tools provided: List modules, Install modules, Uninstall modules.

For more details see the README file.

Tool Shop - Database Logging

Search log messages by text, retrieve a single log entry, and delete log messages that match given criteria, going beyond the Recent log messages report. Log messages can contain internal details such as exception traces, so decide deliberately who may read them.

Tools provided: Query log messages, Get log message, Delete log messages.

For more details see the README file.

Requirements

  • Drupal 10.3 or later
  • Tool 1.0.x

Installation

  1. Require the project as a development dependency: composer require --dev drupal/tool_shop
  2. Enable the submodules whose tools you need.
  3. In the settings.php of each environment where the tools should work, add: $settings['tool_shop_enabled'] = TRUE;
  4. Grant the relevant tool permissions to trusted roles only.

Roadmap

  • Configuration import and export, and comparing active configuration with the sync directory.
  • Database updates and entity schema updates.
  • Recipe tools to list, inspect, validate and apply recipes.

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
2
Tracked since
Sep 2026
Latest release
5 hours ago
Releases (12 mo)
2 ▲ from 0
Maintenance
Active

Releases

Version Type Core Release date
1.0.x-dev Dev 10–11 Sep 18, 2026
1.0.0-alpha1 Pre-release 10–11 Sep 18, 2026