项目简介

Elementor MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为支持MCP的LLM(大型语言模型)客户端提供访问和操作 WordPress 网站上 Elementor 页面内容的能力。它将WordPress和Elementor的相关操作封装成标准化的MCP工具,使LLM能够理解并执行这些任务。

主要功能点

该服务器提供了以下核心功能(以MCP工具形式提供):

  • 创建页面 (create_page): 根据提供的标题、状态、标准内容和 Elementor 数据(JSON字符串格式),在目标 WordPress 网站上创建一个新页面,并返回新页面的ID。
  • 获取页面 (get_page): 根据页面ID,获取目标 WordPress 网站上指定页面的全部数据,包括 Elementor 数据等元信息。
  • 下载页面到文件 (download_page_to_file): 根据页面ID,获取指定页面数据,并保存到本地文件。可以选择只保存 Elementor 数据。
  • 更新页面 (update_page): 根据页面ID,更新目标 WordPress 网站上指定页面的标题、状态、标准内容或 Elementor 数据(JSON字符串格式)。
  • 从文件更新页面 (update_page_from_file): 根据页面ID,从本地文件读取 Elementor 数据(可选从另一文件读取标准内容)来更新指定页面。
  • 删除页面 (delete_page): 根据页面ID,删除目标 WordPress 网站上指定页面。可以选择是送入回收站还是永久删除。
  • 根据页面别名获取ID (get_page_id_by_slug): 根据页面的URL别名 (slug),查找并返回对应的页面ID。

安装步骤

该服务器通常作为MCP客户端的“后端”运行。您不需要手动编译或启动它,而是通过支持MCP的客户端(如Claude Desktop, Smithery等)来管理和启动。

推荐的使用方式是通过 Smithery 平台或直接在您的MCP客户端配置文件 ('mcp.json' 等) 中进行配置。

服务器配置

MCP客户端需要配置如何启动这个服务器以及传递必要的参数。该服务器需要访问您的目标 WordPress 网站,因此需要设置以下环境变量:

  • 'WP_URL': 您的目标 WordPress 网站的完整URL(例如: 'https://your-website.com')。
  • 'WP_APP_USER': 用于连接 WordPress API 的应用程序用户(用户名)。
  • 'WP_APP_PASSWORD': 用于连接 WordPress API 的应用程序密码。注意: 这是一个特殊的应用程序密码,可以在您的WordPress后台生成(通常在“用户”设置中)。

在MCP客户端的配置中,您通常会指定服务器的名称、启动命令和传递这些环境变量。例如,在 'mcp.json' 文件中,配置项可能看起来像这样(具体格式取决于您的MCP客户端):

  • 服务器名称: 例如 'Elementor MCP'
  • 启动命令: 告诉客户端如何启动服务器的可执行命令。对于这个项目,通常是 'npx -y elementor-mcp' (在 Windows 上可能是 'cmd /c npx -y elementor-mcp')。'npx' 会从 npm 仓库下载并运行 'elementor-mcp' 包。
  • 启动参数 (args): 针对 'npx' 命令,通常没有额外参数需要传递给 'elementor-mcp' 本身。
  • 环境变量 (env): 在这里设置上面提到的 'WP_URL', 'WP_APP_USER', 'WP_APP_PASSWORD' 环境变量及其对应的值。

基本使用方法

服务器启动并连接到MCP客户端后,LLM客户端会感知到 Elementor MCP 服务器及其提供的工具能力。用户可以通过与LLM交互,指示LLM使用这些工具来:

  1. 查找特定页面的ID(使用 'get_page_id_by_slug')。
  2. 获取页面的数据(使用 'get_page'),可能让LLM分析 Elementor 结构。
  3. 根据LLM的指令或用户提供的数据,创建新页面或更新现有页面的 Elementor 内容(使用 'create_page', 'update_page', 'update_page_from_file')。
  4. 将页面数据保存到本地或从本地加载 Elementor 数据进行更新(使用 'download_page_to_file', 'update_page_from_file')。
  5. 删除不再需要的页面(使用 'delete_page')。

所有交互都通过LLM客户端与服务器之间的MCP通信完成。

信息

分类

网页与API