Skip to content
Back to search
100
MCP live MCP 2026-07-28 streamable-http

Drupal Code Query

tech.tresbien/drupal-code-query

Drupal core API changes, contrib usage, upgrade readiness, patch verdicts, code search, SQL.

Watch this dependency Share evidence report
Uptime
100.0%
5 direct probes · 30d
Response
208ms
last probe
Tools
17
callable
Resources
0
readable
Prompts
0
available
Score: 100/100
Handshake verified by our own probe.
pass Answers the MCP handshake 50/50
The handshake and the list calls succeeded on the primary URL.
pass Lists tools, resources or prompts 30/30
17 tools, 0 resources, 0 prompts returned.
pass 3 or more catalogue items 10/10
17 items in total; 3 or more earns these points.
pass Describes itself 10/10
92 characters; more than 30 earns these points.

Tools · 17

check_patches

Does each composer patch still apply to the release the site installed, and is its fix already in that release? - Send composer_json and composer_lock after composer update. Add patch_files for every …

describe_dataset

Learn the dataset before writing SQL for query_dataset. Call it with no arguments first. Returns text. Prefer a typed tool when one answers the question. - No arguments: one line per view, the join ma…

get_change_record

Return one core change record in full: title, flavour, target version, machine-checkable tracks, linked issues, linked core symbols, and contrib adoption counts. To find records, use list_change_recor…

list_change_records

List the core change records (the human write-ups) that target a range of core versions, tagged by flavour and ranked, with counts. For the symbol-level diff, use what_changed. For one record in full,…

list_class_relations

List the contrib classes that extend, implement or use a core class, interface or trait, one row per edge with file and line, paged. Example: "who subclasses FormBase". Call-site counts: list_symbol_u…

list_projects

List drupal.org projects after filters, largest install base first, paged. Examples: "top modules without an 11.4 branch", "themes over 10k installs without security coverage". One project: project_pr…

list_symbol_users

List every contrib project using one core symbol, or any symbol in a class of symbols, one row per project, paged, with the matched symbols. lookup_core_symbol answers one symbol with a head of 30. - …

lookup_core_symbol

Answer "is this core symbol safe to use, and who still uses it" for one symbol. A name that resolves to nothing returns the catalog entries containing it instead. Every user in pages: list_symbol_user…

project_profile

Answer "what is this contrib project, how big is it, which core versions does it support, what moves with it" for one drupal.org project. Pending change records: project_upgrade_report. Core symbols i…

project_upgrade_report

Answer "is this contrib project ready for a target core version, and what work is left". For one record's detail, use get_change_record. For a symbol's users, use list_symbol_users. - A record applies…

query_dataset

Run read-only DuckDB SELECTs over the dataset behind the other tools, for a question none of them asks. Call describe_dataset first; it lists the 36 views, their columns, joins and recipes. Prefer a t…

reroll_patch

Re-roll one composer patch that check_patches reported conflicts or fuzzy: a new diff that applies to the installed release. Call check_patches first for the whole list. Call this once per patch that …

scan_composer

Which of a site's drupal/* packages need a new release for a target core, and which have none? Send composer.lock and composer.json once; do not query one package at a time. The answer is the release …

search_code

Search the source of every indexed contrib project, plus core, for a code pattern: which files, or with by_repo which projects. Who-uses-a-core-symbol counts: list_symbol_users or lookup_core_symbol. …

subsystem_coupling

Answer "what else tends to fail when a merge request touches this core subsystem" from CI history over about 9,000 core merge requests. With issue_nid: "which subsystems does this issue touch, and wha…

what_changed

Answer "what changed in the core API between two core versions": symbols added, deprecated and removed, as ranked groups with counts. One symbol: lookup_core_symbol. Human write-ups: list_change_recor…

wordpal_theme

Answer "does this WordPress block theme convert to Drupal with WordPal". The WordPal gallery converts every block theme on wordpress.org each night. With slug: one theme and its routes. Without slug: …

How to use

Claude Desktop or claude.ai: add a custom connector (Customize → Connectors; on Team and Enterprise plans an owner adds it under Organization settings → Connectors) with this server URL: https://mcp.tresbien.tech/mcp

Cursor or Cline: add to your MCP config:

{
  "mcpServers": {
    "drupal_code_query": {
      "url": "https://mcp.tresbien.tech/mcp",
      "transport": "streamable-http"
    }
  }
}