A tool to painlessly update a heavily patched Drupal site

Picture a Drupal 10.6 website with a several months stale composer.json: 120 contrib modules, 47 patches. You need to update it to Drupal 11.4. Many hours will be spent checking  I don't want to deal with this several times a year so I improved the Drupal-Code-Query MCP server with a few more tools. 

  • scan_composer: send composer.lock, composer.json, and a core target version to the endpoint and get a list of modules that are compatibles with the target version.
  • check_patches: tells you if a patch applies to a newer version of the module, or if it's already included in the new release.
  • reroll_patch: if the patch doesn't apply try to make it apply and return the result. 

I tested this with Claude Opus 5, the full update went from 40 minutes to 30 minutes with the MCP server, half the tools call, better accuracy, and ended up costing 26% less. It also helped a Mistral-based tool complete the update in 7 minutes instead of 20 minutes.

Nothing on the backend is relying on LLM to generate the results, I'm taking advantage of having all of contrib repositories locally available and the extensive code and issue indexing I already built over several years. Using the read-only APIs at: https://api.tresbien.tech/v1/composer/scan and https://api.tresbien.tech/v1/patch/check will not query a LLM of any kind during the response. 

I'm almost looking forward to the next update