usefulapi

Drupal MCP server. Read and write Drupal JSON:API nodes, taxonomy terms, users and files.

Claude

  1. Open Settings → Connectors → Add custom connector
  2. Paste this URL:
    https://drupal.usefulapi.io/mcp
  3. Authenticate with Drupal when prompted

Cursor · VS Code · Windsurf · Cline

Add to your MCP config, then reload & authorize:

{
  "mcpServers": {
    "drupal": {
      "url": "https://drupal.usefulapi.io/mcp"
    }
  }
}
live7 toolsFree 100 tool calls / monthPro $9/mo · $90/yr

Tools 7

ToolTypeWhat it does
drupal_list_resource_typesread
List resource types
List all available JSON:API resource types (entity_type/bundle pairs) with their hrefs, so the agent can discover what to query. JSON:API: GET /jsonapi.
drupal_list_resourcesread
List resources
List a collection of resources for an entity_type/bundle, with optional sorting, pagination, includes, and a single-field filter. JSON:API: GET /jsonapi/{entity_type}/{bundle}.
drupal_get_resourceread
Get resource
Get a single resource by UUID for an entity_type/bundle, with optional includes. JSON:API: GET /jsonapi/{entity_type}/{bundle}/{uuid}.
drupal_search_contentread
Search content
Convenience node-title search: list nodes of a bundle whose title CONTAINS a query string. JSON:API: GET /jsonapi/node/{bundle} with a verbose CONTAINS filter on title.
drupal_create_resourcewrite
Create resource
Create a new resource (content entity) for an entity_type/bundle. JSON:API: POST /jsonapi/{entity_type}/{bundle} → 201. Body is { data: { type: entity_type--bundle, attributes, relationships? } }.
drupal_update_resourcewrite
Update resource
Update an existing resource by UUID (partial update of attributes and/or relationships). JSON:API: PATCH /jsonapi/{entity_type}/{bundle}/{uuid}. Body is { data: { type, id: uuid, attributes?, relationships? } }.
drupal_delete_resourcewrite
Delete resource
Delete a resource by UUID. JSON:API: DELETE /jsonapi/{entity_type}/{bundle}/{uuid} → 204 (empty body). Returns a small confirmation.

Pricing

PlanPriceLimit
Free$0100 tool calls / month
Pro$9/mo · $90/yrUnlimited

This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.