# AX Check: drupal.org
Checked 2026-09-18.

Drupal's quickstart works, but llms.txt and AI docs are missing
Install commands and quickstart steps are clear and pass, but llms.txt returns a 404 and no Markdown docs or MCP support exist. 8 of 23 checks passed.

## End-to-end onboarding not demonstrated

## Coding sessions
All three independent agent sessions completed and correctly identified Drupal core as free, then explained hosting costs with their own assumptions: one cited self-host and enterprise ranges, another gave rough monthly ranges for managed hosting providers like Acquia and Pantheon.

### DeepSeek V4 Pro
[View public run](https://agents.withgauge.com/p/runs/092aea15-d539-4af0-9c4b-ae363b8d2584) · [Read transcript](https://www.ax-check.com/drupal.org/sessions/deepseek.json)
Final output states Drupal core costs $0 and ties that figure explicitly to the assumption that it's free/open-source software with no tiers or usage billing, while flagging that real costs come from separate third-party hosting pricing.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: The agent never obtained or used product credentials of any kind. It only ran local curl checks against drupal.org and new.drupal.org, then concluded Drupal has no hosted SDK/API and stopped without attempting any signup, authentication, or authenticated operation.
  Event 13:

  ```text
  curl -sL -m 10 -o /dev/null -w "final_url=%{url_effective} code=%{http_code}\n" https://www.drupal.org/api-doc
  ```
  Event 20:

  ```text
  Drupal has no developer workflow I can act on without starting a local service stack or waiting on a long-running install. I'm stopping here rather than improvise.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No hosted Drupal SDK/API to act on**: Product behavior, not agent error: Drupal is self-hosted open-source software with no official cloud API. The agent correctly identified that drupal.org's api-doc path is just documentation (404 on www, redirect elsewhere) and that JSON:API/REST/GraphQL are only exposed by a running self-hosted instance, which requires PHP, Composer, a database, and a web server — a local service stack the session's instructions explicitly forbade starting.
  Event 18:

  ```text
  final_url=https://new.drupal.org/api-doc code=404
  ```
  Event 20:

  ```text
  Drupal does ship with APIs — **JSON:API**, **REST**, and (via module) **GraphQL** — but those are served *from your own running Drupal instance*. Standing one up requires PHP, Composer, and a database (MySQL/PostgreSQL/SQLite) and a web server, i.e. a local service stack or a long-running install.
  ```

#### Suggested Changes
- **Add a clear notice that Drupal has no hosted API product**: On drupal.org's main developer/API documentation entry point (e.g. the page linked from api-doc), state plainly near the top that Drupal is self-hosted only and there is no first-party hosted SDK/API, pointing directly to third-party hosts (Acquia, Pantheon, Platform.sh) for anyone seeking a hosted workflow. Verify by confirming a new visitor reads this before spending time probing for a nonexistent cloud API endpoint, as this agent did.
  Event 20:

  ```text
  There is no official "hosted Drupal" product with an SDK or cloud API I can call. `drupal.org` has no public API endpoint for building/running sites (api-doc returns 404; it's a community/docs site).
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/35f88ece-c324-426a-99c8-40fbe488736f) · [Read transcript](https://www.ax-check.com/drupal.org/sessions/kimi.json)
Final output states Drupal core is free and breaks down hosting costs with explicit assumptions (self-host ~$10-100+/mo, Pantheon ~$50/mo for small sites, Acquia enterprise-tier $thousands/yr, Platform.sh usage-based).
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: Agent never attempted to obtain or use any credentials. It reasoned that Drupal is self-hosted (requires PHP, database, web server, Composer) and has no hosted API/SDK to hit anonymously, then stopped per the user's instruction to not stand up local stacks. No tool calls were made at all in this session.
  Event 2:

  ```text
  Drupal is a self-hosted, open-source PHP CMS — there is no hosted "Drupal API/SDK" product I can call to build an example.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **Drupal requires a local stack, which the task rules out**: Product behavior, not agent error: Drupal's standard developer workflow needs a PHP runtime, a database, a web server, and Composer plus the site installer to do anything. The session's instructions explicitly forbade starting local service stacks or waiting on long-running commands, so the agent correctly halted instead of attempting a local install.
  Event 2:

  ```text
  To use it at all, the quickstart requires:
  
  1. A local (or provisioned) PHP runtime
  2. A database (MySQL/MariaDB/PostgreSQL or SQLite)
  3. A web server, plus `composer create-project drupal/recommended-project` and the site installer
  ```
- **No anonymous hosted entry point exists for Drupal**: Product/ecosystem limitation: managed Drupal hosting (Acquia, Pantheon, Platform.sh) exists but is account-gated SaaS requiring sign-up, so the agent had no way to self-provision credentials or a hosted instance without human involvement.
  Event 2:

  ```text
  Hosted options exist (Acquia, Pantheon, Platform.sh), but they're account-gated SaaS platforms, not something I can spin up or hit via API anonymously.
  ```

#### Suggested Changes
- **Offer a documented free hosted sandbox path for API-first evaluation**: Provide (or link prominently in Drupal's getting-started docs) a self-service, no-card-required hosted sandbox with an issued API token, similar to what the agent proposed for Pantheon, so a developer evaluating the JSON:API workflow can authenticate and create content without provisioning PHP/DB/web server locally. Check success by having a new user obtain a token and create a node via JSON:API within one session.
  Event 2:

  ```text
  the lightest path would be: you create a free Pantheon sandbox (no card required), give me the site URL + a token, and I'll drive it via JSON:API/Terminus
  ```

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/e804184d-1ce4-4914-910d-69fdc513ac5d) · [Read transcript](https://www.ax-check.com/drupal.org/sessions/qwen.json)
Final output states Drupal core is free and managed hosting (Acquia/Pantheon/Platform.sh) runs 'roughly tens to hundreds of USD/month per environment, scaling with traffic and features' — names the environment/traffic/feature assumptions behind the range.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: Agent never attempted to obtain or use any product credentials. It concluded Drupal has no hosted SDK/API reachable without local infrastructure and stopped without contacting any real product endpoint.
  Event 6:

  ```text
  This environment has no PHP or Composer installed, and no credentials for any managed Drupal platform. So I can't build the example under your constraints.
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No hosted Drupal API reachable without local stack**: Agent determined that building the requested example required a local PHP/Composer/database stack, which the prompt explicitly forbade (no local service stacks or long-running commands). This is a self-imposed session constraint interacting with Drupal's nature as self-hosted software, not a product defect or missing product credential in the traditional sense — Drupal core itself has no separate hosted SDK to call without first deploying an instance.
  Event 4:

  ```text
  /usr/bin/docker
  
  
  Command exited with code 1
  ```
  Event 6:

  ```text
  Drupal is open-source, self-hosted software — not a hosted product with an SDK or API I can call. Building even a minimal example requires spinning up a local stack (PHP, Composer, a database via Docker or similar), which is exactly what you told me not to do.
  ```

#### Suggested Changes
None identified in this transcript.

### Task given to each agent
Help me build a simple example using Drupal. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: C · 50/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — Homepage answers Markdown requests

  ```text
  Homepage returned text/html for a text/markdown request; no Markdown representation offered.
  ```

- **Failed** — llms.txt provides an actionable documentation index

  ```text
  https://www.drupal.org/llms.txt returned HTTP 404; no documentation index exists.
  ```

- **Skipped** — llms.txt provides navigation guidance

  ```text
  No llms.txt body was returned (404), so navigation guidance cannot be judged.
  ```

- **Skipped** — llms.txt mentions offered API, MCP, and skills

  ```text
  No llms.txt body was returned (404), so API/MCP/skills mentions cannot be judged.
  ```

- **Skipped** — A compact guide representation exists

  ```text
  No site-published compact Markdown guide fetched; only HTML docs and a 404 llms.txt.
  ```

- **Skipped** — A focused guide is directly retrievable

  ```text
  No standalone .md guide or negotiated Markdown representation was retrieved.
  ```

- **Skipped** — Equivalent instructions fit a token budget

  ```text
  No compact guide representation fetched, so token budget cannot be measured.
  ```

- **Skipped** — Product-docs links survive format changes

  ```text
  Homepage Markdown unsupported, so link preservation across formats is unassessed.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  Quick-start guide gives concrete steps: install PHP, get Drupal via Composer, run quick-start command.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Fetched install and next-step pages (getting-started, quick-start) returned HTTP 200.
  ```


### Onboarding
- **Pass** — Docs lead to a relevant quickstart

  ```text
  Getting started guide links Evaluator Guide, Local Development Guide, and quick-start demo install steps.
  ```

- **Pass** — Installation commands are extractable

  ```text
  Quick-start page gives extractable commands: composer create-project, git clone, php core/scripts/drupal quick-start.
  ```

- **Pass** — Code examples are available without interaction

  ```text
  Install and DDEV pages show inline code blocks with composer, ddev, and drush commands.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  Before-installation page states web server and database requirements; quick-start requires PHP only.
  ```


### Pricing
- **Skipped** — Pricing is readable without interaction

  ```text
  Not applicable: the relevant product is free. Drupal is free open source software; no pricing page or paid plans were fetched.
  ```

- **Skipped** — Prices are stated, not gated

  ```text
  Not applicable: the relevant product is free. No pricing page fetched; Drupal is free open source with no applicable paid plans.
  ```

- **Skipped** — Pricing units and limits are explicit

  ```text
  Not applicable: the relevant product is free. No pricing units or limits exist to state for this free open source product.
  ```

- **Skipped** — Agents identify pricing and its assumptions

  ```text
  Not applicable: the relevant product is free. Drupal is free open source software; no pricing page or paid plans were fetched.
  ```


### Activation
- **Pass** — An API reference or OpenAPI spec is reachable

  ```text
  api.drupal.org serves a full generated API reference for Drupal core.
  ```

- **Skipped** — An MCP server is documented and well-formed

  ```text
  No MCP server documentation appears in any fetched Drupal.org page.
  ```

- **Pass** — A CLI install path is documented

  ```text
  Quick-start guide documents CLI commands: composer create-project, php core/scripts/drupal quick-start.
  ```

- **Skipped** — SDK packages resolve on their registries

  ```text
  No registry lookup for a Drupal distributed package was supplied.
  ```

- **Skipped** — Agent skills are published

  ```text
  No agent skills are mentioned in any fetched Drupal.org documentation page.
  ```



[Full report data](https://www.ax-check.com/drupal.org/report.json)
