This project is not covered by Drupal’s security advisory policy.
Why Agent Access
People increasingly work through assistants, workplace tools, and other interfaces instead of visiting every application directly. Drupal should still recognize them, apply its rules, and record their work - even when they are not looking at a Drupal page.
The basic promise is simple:
Connect once. Work with Drupal wherever you already are. Anything Drupal allows you to do can be made available there, under the same identity, rules, workflows, and record.
Agent Access makes a person’s ability to work with Drupal available across interfaces while keeping authority in Drupal. The person connects through their real Drupal account. Drupal evaluates their current permissions, entity and field access, validation, workflows, and other site rules whenever work is requested.
An administrator continues to manage ordinary Drupal. Change a role, permission, validation rule, or editorial workflow, and connected interfaces follow that change. A connection may narrow what an assistant can request, but it can never add authority Drupal has not granted.
The interface can change. The site’s identities, structured content, rules, revisions, and record remain in Drupal.
What this is
Agent Access for Drupal is the Drupal AI Initiative’s approach to letting external agents and assistants act through a person’s existing Drupal account. It is part of the initiative’s Outside AI work.
Its long-term direction is:
- Drupal modules define their supported capabilities once through reusable Drupal APIs.
- Compatible external interfaces can discover those capabilities without Drupal-specific client integrations.
- Every request is evaluated as the connected person, under Drupal’s current authority.
- Successful work follows the same validation, workflows, revisions, and attribution as work performed through Drupal’s own interface.
- Denied work fails honestly and provides an actionable Drupal-owned explanation.
Agent Access does not define a second source of Drupal authority, create new permissions, or move control to an AI provider. It provides the connection and trust contract through which Drupal’s existing capabilities can be used.
The first experimental implementation brings together Simple OAuth, Tool API, and MCP Server. Those projects are implementation components, not the product promise: future transports and interfaces may change while the Drupal authority contract remains the same.
Current status
Agent Access is currently an experimental 1.0.x development release and is not covered by Drupal’s security advisory policy. Some required modules are alpha or beta releases.
The current recipe proves a deliberately narrow part of the direction:
- A person can connect through their existing Drupal account.
- Requests run under that account’s Drupal permissions.
- A compatible client can discover and invoke a small configured capability set.
- The starter catalog currently contains two reviewed read tools and no write tools.
It does not yet make every action available outside Drupal’s interface, automatically expose every module capability, or establish production readiness.
The roadmap is to broaden the set of reusable Drupal capabilities, make supported capabilities available automatically through the same connection, improve actionable failures and connection lifecycle management, add public conformance evidence, and help the dependency stack reach stable, security-covered releases.
Install
Use a current Composer 2 release. From the root of an installed, Composer-managed Drupal 11.4 project, run these as two separate commands:
composer require \ 'drupal/tool:^1.0@beta' \ 'drupal/tool_belt:^1.0@alpha' \ 'drupal/mcp_server:^2.0@beta' \ 'drupal/mcp_server_tool_bridge-mcp_server_tool_bridge:^1.0@beta' \ 'drupal/mcp_server_oauth-mcp_server_oauth:^1.0@alpha'
composer require 'drupal/agent_access:1.0.x-dev@dev'Then apply the recipe:
vendor/bin/dr recipe ../recipes/agent_accessCopy the package names exactly; the two doubled names are intentional. Follow the README to finish setup and connect an agent client.
Get involved
Try the recipe with an external agent and tell us what works or where the process breaks. Use the Agent Access issue queue for recipe, installation, documentation, and integration problems.
When investigation identifies a defect in an underlying module, report it in that module’s issue queue and link it from the Agent Access issue. That keeps this project focused on the integrated path while improvements happen in the projects that own the affected code. Remove credentials, tokens, passwords, and keys before sharing logs.
Project information
- Created by scott falconer on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
Releases
Development version: 1.0.x-dev updated 9 Sep 2026 at 03:01 UTC
