Token导航 LogoToken导航TokenDH.com
Drupal MCP Server logo
开发工具未说明官方级别未说明来源级核验

Drupal MCP Server

MCP Server

一个通过JSON:API实现Claude与Drupal 10+站点交互的模型上下文协议服务器,支持查询、搜索和检索Drupal内容。

工具数

4

提示词数

0

GitHub Stars

0

资源数

0
开发工具JavaScriptClaude知识管理Claude DesktopClaudeClineVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

peximo

提供方

peximo

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Drupal MCP 服务器

一个模型上下文协议(MCP)服务器,使Claude能够通过JSON:API与Drupal 10+网站进行交互。此服务器允许Claude查询、搜索并从您的Drupal安装中检索内容。

特点/特性

  • 查询内容通过灵活的选项按内容类型搜索和过滤节点
  • 获取节点详细信息检索完整的节点信息,包括关系
  • 列出内容类型发现您网站上所有可用的内容类型
  • 跨类型搜索按标题搜索所有内容类型中的内容

先决条件

  • Node.js 18+ 和 npm
  • TypeScript 5及以上版本
  • 一个启用了JSON:API的Drupal 10+网站(默认启用)
  • 有效的Drupal凭据(用户名/密码或OAuth令牌)

安装

# Clone or create the project directory
mkdir drupal-mcp-server
cd drupal-mcp-server

# Initialize and install dependencies
npm init -y
npm install @modelcontextprotocol/sdk axios
npm install -D typescript @types/node

项目结构

drupal-mcp-server/
├── src/
│   ├── index.ts          # Main MCP server
│   ├── drupal-client.ts  # Drupal API client
│   └── types.ts          # TypeScript type definitions
├── dist/                 # Compiled JavaScript (generated)
├── package.json
└── tsconfig.json

建筑;大楼

# Compile TypeScript
npm run build

# Watch mode (optional)
npm run watch

编译后的JavaScript文件将输出到 dist/ 目录。

配置

对于Claude Desktop

编辑您的Claude桌面配置文件:

macOS(发音:/ˈmækOS/,中文常译为“麦奥斯”或直接使用原名): ~/Library/Application Support/Claude/claude_desktop_config.json\ Windows%APPDATA%\Claude\claude_desktop_config.json\ Linux~/.config/Claude/claude_desktop_config.json

添加以下配置:

{
  "mcpServers": {
    "drupal": {
      "command": "node",
      "args": ["/absolute/path/to/drupal-mcp-server/dist/index.js"],
      "env": {
        "DRUPAL_BASE_URL": "https://your-drupal-site.com",
        "DRUPAL_USERNAME": "your-username",
        "DRUPAL_PASSWORD": "your-password"
      }
    }
  }
}

注:替换 /absolute/path/to/drupal-mcp-server 使用您系统上的实际路径 pwd 在项目目录中获取完整路径。

对于Cline(VS Code)

添加到您的VS Code中 settings.json:

{
  "cline.mcpServers": {
    "drupal": {
      "command": "node",
      "args": ["/absolute/path/to/drupal-mcp-server/dist/index.js"],
      "env": {
        "DRUPAL_BASE_URL": "https://your-drupal-site.com",
        "DRUPAL_USERNAME": "your-username",
        "DRUPAL_PASSWORD": "your-password"
      }
    }
  }
}

环境变量

  • DRUPAL_BASE_URL (必填):您的Drupal网站URL
  • DRUPAL_USERNAME (可选):基本身份验证用户名
  • DRUPAL_PASSWORD (可选):基本认证密码
  • DRUPAL_ACCESS_TOKEN (可选):OAuth 访问令牌(可替代用户名/密码)

测试

手动服务器测试

直接从命令行测试服务器:

cd /path/to/drupal-mcp-server

DRUPAL_BASE_URL="https://your-site.com" \
DRUPAL_USERNAME="admin" \
DRUPAL_PASSWORD="password" \
node dist/index.js

你应该看到:

Drupal MCP Server running
Connected to: https://your-site.com

按压 Ctrl+C 停止。

测试与Drupal的连接

验证您的Drupal网站是否可访问:

curl -I https://your-site.com/jsonapi

应该返回一个 200 OK 状态。

在Claude桌面版上进行测试

  1. 更新配置后重启 Claude 桌面版
  2. 在界面底部寻找 🔌 图标
  3. 点击它查看已连接的MCP服务器
  4. 开启一个新的对话并尝试:
What tools do you have available?

示例查询

列出内容类型:

List all available content types on my Drupal site

查询内容:

Show me 5 published articles

搜索内容:

Search for content with "tutorial" in the title

获取节点详情:

Get the full details of node [UUID]

复杂查询:

1. List all content types
2. Find 3 articles
3. Show me the complete details of the first article

可用工具

query_content

按类型搜索和筛选Drupal内容。

参数:

  • contentType (必填):内容类型的机器名(例如,“article”,“page”)
  • limit (可选):要返回的最大结果数(默认:10)
  • title (可选):按标题过滤(部分匹配)
  • status (可选):按发布状态(真/假)过滤

get_node

检索特定节点的完整详细信息。

参数:

  • nodeId (必填):节点的UUID或数字ID
  • include (可选):要包含的相关实体数组(例如,\["field_image", "uid"\])

list_content_types

列出网站上所有可用的内容类型。

参数:

search_content

按标题搜索所有内容类型。

参数:

  • searchTerm (必填):要在标题中搜索的文本
  • limit (可选):最大结果数(默认:10)

故障排除

“服务器断开连接”错误

  1. 检查服务器是否能手动启动
  2. 验证配置中的路径是否为绝对路径
  3. 检查Claude Desktop日志:
   # macOS
   tail -f ~/Library/Logs/Claude/mcp*.log

SSL证书错误(DDEV/本地开发)

如果使用自签名证书,服务器会自动为本地开发禁用证书验证。

权限错误

确保您的Drupal用户有权访问JSON:API终端节点。通常,“查看已发布的内容”权限足以进行读取操作。

JSON:API未启用

JSON:在Drupal 10+中,“API”默认是启用的。如果您遇到404错误,请确认其已在以下位置启用: /admin/modules 搜索“JSON:API”

发展

添加新工具

  1. 定义工具模式(或工具架构)于 TOOLS 数组中的 src/index.ts
  2. 在(相应位置)实现处理程序 CallToolRequestSchema switch 语句
  3. 添加任何新方法到 DrupalClient 按需授课
  4. 重建: npm run build

扩展功能

潜在的改进点:

  • 创建/更新内容(POST/PATCH 请求)
  • 管理分类法术语
  • 查询用户
  • 执行视图
  • 上传媒体/文件
  • 管理菜单

许可证

麻省理工学院(MIT)

做出贡献

欢迎贡献!请随时提交问题或拉取请求。

目录标签

目录标签

开发工具JavaScriptClaude知识管理Drupal集成本地部署内容管理JSON:APIClaude扩展

支持客户端

Claude DesktopClaudeClineVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauthremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP