Goldnat Plugins
Drupal vlatest · active

Connect AI Agents to your Drupal site

A native Drupal module with services architecture, dependency injection, and config management. Lets AI agents securely search nodes, read content, and query comments — all respecting your Drupal permissions.

Goldnat for Drupal · Goldnat for Drupal — the Bridge add-on

Why this plugin

What you get with Goldnat for Drupal.

📡

Servio Protocol

Built on the Servio Protocol standard for tool-use AI agents. Provides a manifest endpoint, tool discovery, and structured JSON responses that AI platforms understand natively.

🤖

Pre-configured AI Clients

Ships with built-in OAuth client configurations for ChatGPT, Claude, Copilot, Gemini, Grok, DeepSeek, and Perplexity. Connect in minutes, not hours.

📦

Built for Drupal 9/10/11

Native Drupal module with proper .info.yml, routing.yml, services.yml, and config schema. Installs via drush or the admin panel.

Capabilities

What it does.

OAuth 2.0 + PKCE

Secure by design

Industry-standard OAuth flow with PKCE. Every AI agent authenticates with proof-of-key exchange — no secrets stored client-side.

Permission-aware

Native permissions

Tool calls respect the platform's native permission model. Users only see content they're allowed to access.

REST + JSON

Servio Protocol

Manifest endpoint, tool discovery, structured JSON responses. Compatible with the Model Context Protocol standard.

Tools included

Production ready

Structured tool calls ready for production use on your platform.

Get started

Up and running.

1

Install the Module

Install via drush (drush en ai_connect) or through the Drupal admin panel.

2

Open AI Connect Settings

Go to Configuration → AI Connect in your Drupal admin. You'll find your manifest URL and all pre-configured OAuth client definitions ready to copy.

3

Add the Manifest URL to Your Agent

Paste the manifest URL from the settings page into Claude Desktop, ChatGPT, or any MCP-compatible AI agent.

4

Approve Access & Start Chatting

When the AI agent requests access, your users approve via a secure OAuth screen — then the AI can search nodes, read content, and query comments naturally.

Tools

Available tool calls.

50 tools exposed via the Servio protocol. AI agents call these by name with structured arguments.

drupal

  • drupal.downloadFile Get a direct download URL or binary content for a file by file ID. Returns authenticated URL and file metadata.
  • drupal.executeView Run a view and return its actual results — the rendered rows, not just its configuration.
  • drupal.getContentTypes List all available content types (node bundles) with their machine names, labels, descriptions, and field configurations.
  • drupal.getImageStyles Get all configured image styles (responsive derivatives) for a specific media image, including thumbnail, medium, large, and custom styles. Returns URLs for each style with dimensions. Essential for responsive image delivery.
  • drupal.getMedia Get media entity details by media ID, including media type (image/video/document), source file, alt text, and usage references.
  • drupal.getMediaDownloadUrl Get a direct download URL for a media file. Returns both public and private file URLs with appropriate access tokens for private files. Use this to retrieve the actual binary content of images, videos, documents, and audio files.
  • drupal.getMediaFieldValues Get all custom field values for a media item, including taxonomy terms, entity references, text fields, and computed fields. Returns structured data with field machine names, labels, and formatted values.
  • drupal.getMediaUsage Get a complete list of all places where a specific media item is used across the site, including node IDs, entity types, field names, and URLs. Essential for understanding impact before deletion or modification.
  • drupal.getMenuItems Get menu structure and items for a specific menu by menu ID, including titles, links, parent-child relationships, and weights.
  • drupal.getNodeAttachments List all file and media attachments for a node, including file IDs, names, types, sizes, and URLs.
  • drupal.getNodeRevisionContent Get the full content of a specific node revision by revision ID, including all fields, body, and metadata as they existed in that version.
  • drupal.getNodeRevisions List all revisions for a specific node, including revision IDs, creation dates, authors, and revision log messages.
  • drupal.getTaxonomyTerm Get a single taxonomy term by ID, including name, description, vocabulary, parent terms, and hierarchy depth.
  • drupal.getUser Get user profile by user ID, including username, email, roles, creation date, last login, status, and custom profile fields.
  • drupal.getView Execute a Drupal View and get results by view ID and display ID, with optional filters and arguments. Returns structured data as configured in the view.
  • drupal.getVocabularies List all taxonomy vocabularies (content categorization systems), including vocabulary IDs, names, descriptions, and term counts.
  • drupal.listMediaLibrary List all media items in the media library with pagination, sorted by upload date, name, or usage count. Supports filtering by media type (image/video/document/audio) and collection/folder. Returns thumbnail URLs and basic metadata for each item.
  • drupal.listMediaTypes List all configured media types (bundles) on the site with their field definitions, allowed file extensions, upload size limits, and configured image styles or video transcoders. Useful for understanding what types of media can be uploaded.
  • drupal.listUnusedMedia List all media items that are not currently referenced by any content entity. Useful for cleanup operations and identifying orphaned files that can be safely deleted. Returns media IDs, names, file sizes, and upload dates.
  • drupal.listViews List the views configured on the site, with their displays and status.
  • drupal.searchMedia Search media library by name, type, MIME type, or upload date. Returns media IDs, names, types, thumbnails, and file references.
  • drupal.searchMediaByTag Search media items by taxonomy tags or categories. Supports multiple tags with AND/OR logic. Returns matching media with thumbnails and usage statistics. Essential for organizing large media libraries.
  • drupal.searchTaxonomyTerms Search taxonomy terms by name, vocabulary, parent term, or hierarchy level. Returns term IDs, names, descriptions, and relationships.
  • drupal.searchUsers Search users by username, email, role, status (active/blocked), or registration date. Returns user IDs, names, emails, and roles.

CoreModule

  • drupal.createComment Post a new comment on a content node (auto-detects the comment field per content type)
  • drupal.createNode Create a new content node (article, page, or any content type)
  • drupal.deleteComment Permanently delete a comment
  • drupal.deleteNode Permanently delete a content node
  • drupal.getComment Returns a single comment by ID.
  • drupal.getCurrentUser Returns the currently authenticated user.
  • drupal.getNode Returns a single content node by ID.
  • drupal.publishNode Publish or unpublish a content node
  • drupal.searchComments Searches comments by keywords.
  • drupal.searchNodes Searches content nodes by keywords and type.
  • drupal.updateComment Update the body of an existing comment
  • drupal.updateNode Update an existing content node's title or body

FileModule

  • drupal.uploadFile Upload a new file from base64-encoded content (max 10 MB), for use as a media source

MediaModule

  • drupal.createMedia Create a media library item from an uploaded file or a remote source URL
  • drupal.deleteMedia Delete a media item (the underlying file is left in place)
  • drupal.updateMedia Update a media item's name or source

StructureModule

  • drupal.createMenuLink Add a new link to a menu (internal path or external URL); requires administer menu permission
  • drupal.deleteMenuLink Permanently delete a custom menu link
  • drupal.updateMenuLink Update an existing custom menu link

TaxonomyModule

  • drupal.createTaxonomyTerm Create a new taxonomy term in a vocabulary, optionally hierarchical
  • drupal.deleteTaxonomyTerm Permanently delete a taxonomy term
  • drupal.updateTaxonomyTerm Update an existing taxonomy term's name or description

UserModule

  • drupal.blockUser Block a user account, preventing login (the primary uid=1 administrator cannot be blocked)
  • drupal.createUser Create a new user account, auto-generating a password if none is given
  • drupal.unblockUser Unblock a previously blocked user account
  • drupal.updateUser Update a user account's email, password, or role assignments

Pricing

Pick a plan.

Free

Free

Free, fully functional

  • getNode
  • searchNodes
  • getCurrentUser
  • getTaxonomyTerms
  • getUser
Install

Drupal platform

More plugins for Drupal

← All Drupal plugins

Questions about Goldnat for Drupal?