WordPress代码生成与标准服务

一个为WordPress开发提供代码生成工具、编码标准验证及框架指南的MCP服务器,专注于Gutenberg块、GeneratePress主题和GenerateBlocks插件。

  • by JTruax
  • TypeScript
  • 本地部署
  • 10 星标
  • 更新于
在 GitHub 查看 JTruax/BOIM-WP-MCP

使用说明

BOIM WordPress堆栈MCP

模型上下文协议(MCP)服务器,充当LLM连接器(如Claude Desktop或Cursor)的编码标准和框架指南。它提供WordPress开发知识、代码生成工具和最佳实践,重点关注Gutenberg块、GeneratePress主题、GenerateBlocks插件和WPCodebox代码段格式。

概述

此MCP服务器 非 直接访问WordPress网站。相反,它提供:

  • 代码生成工具:按照最佳实践生成WordPress代码
  • 编码标准:WordPress编码标准验证和格式化
  • 框架指南:古腾堡、GeneratePress、GenerateBlocks和WPCodebox的知识库
  • 最佳实践:安全、性能和兼容性指南

特性

代码生成

  • Gutenberg块代码(block.json、PHP注册、React组件)
  • GenerateBlocks兼容的块代码
  • WordPress函数、挂钩、快捷代码和REST API端点
  • WPCodebox格式的代码片段

编码标准

  • PHP编码标准验证
  • JavaScript编码标准验证
  • CSS编码标准验证
  • 安全最佳实践(消毒、逃逸、非紧急情况)
  • 性能优化指南

知识库

  • WordPress编码标准参考
  • 古腾堡区块开发模式
  • GenerateBlocks开发指南
  • WPCodebox代码段格式规范
  • GeneratePress主题最佳实践

快速入门:连接MCP服务器

先决条件

  • Node.js 18.0.0或更高版本
  • npm或纱线
  • 已安装克劳德桌面或光标

按照以下简单步骤将此MCP服务器连接到Claude Desktop或Cursor。

步骤1:安装和构建

  1. 克隆存储库:

    git clone https://github.com/JTruax/BOIM-WP-MCP.git
    cd BOIM-WP-MCP
    
  2. 安装依赖项:

    npm install
    
  3. 构建项目:

    npm run build
    

    验证构建是否成功: 你应该看到一个 dist/ 使用创建的目录 index.js 如果构建失败,请检查是否正确安装了所有依赖项。

  4. 注意完整路径 到 dist/index.js 文件。下一步你需要这个。

    要获取完整路径,请执行以下操作:

    • macOS/Linux:运行 pwd 在终端之后 cd BOIM-WP-MCP,然后追加 /dist/index.js
    • 视窗:运行 cd 在命令提示符后 cd BOIM-WP-MCP,然后追加 \dist\index.js

    示例路径:

    • macOS/Linux: /Users/yourname/BOIM-WP-MCP/dist/index.js
    • 窗户: C:\\Users\\yourname\\BOIM-WP-MCP\\dist\\index.js (使用双反睫毛 \\ JSON格式,或正斜杠 /)

步骤2:配置Claude桌面

  1. 找到您的Claude Desktop配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 视窗: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  2. 打开配置文件 在文本编辑器中。如果它不存在,就创建它。

  3. 添加MCP服务器配置:

    如果文件为空或没有 mcpServers,使用这个:

    {
      "mcpServers": {
        "wordpress-gutenberg": {
          "command": "node",
          "args": ["/full/path/to/BOIM-WP-MCP/dist/index.js"]
        }
      }
    }
    

    如果文件已经 mcpServers,添加到现有对象中:

    {
      "mcpServers": {
        "existing-server": { ... },
        "wordpress-gutenberg": {
          "command": "node",
          "args": ["/full/path/to/BOIM-WP-MCP/dist/index.js"]
        }
      }
    }
    
  4. 替换 /full/path/to/BOIM-WP-MCP/dist/index.js 从第一步开始的实际路径。

  5. 保存文件 并重新启动克劳德桌面。

步骤3:配置游标

  1. 打开光标设置:

    • 按 Cmd/Ctrl + Shift + P 打开命令面板
    • 键入“首选项:打开用户设置(JSON)”并选择它
    • 或转到“设置”→ 扩展→ MCP(如果可用)
  2. 添加MCP服务器配置:

    将此添加到您的游标设置JSON中:

    {
      "mcp.servers": {
        "wordpress-gutenberg": {
          "command": "node",
          "args": ["/full/path/to/BOIM-WP-MCP/dist/index.js"]
        }
      }
    }
    
  3. 替换 /full/path/to/BOIM-WP-MCP/dist/index.js 从第一步开始的实际路径。

  4. 保存设置 并重新启动Cursor。

步骤4:验证连接

  1. 重新启动应用程序 (克劳德桌面或光标)。

  2. 检查MCP服务器:

    • 在Claude Desktop中:服务器应出现在MCP服务器列表中
    • 光标:检查MCP状态指示灯
  3. 测试工具:

    • 试着问:“生成一个名为‘自定义卡’的古腾堡块”
    • 或者:“为WPCodebox格式化此PHP代码:[您的代码]”

故障排除

MCP服务器未出现?

  • 验证路径 dist/index.js 是正确和绝对的(不是相对的)
  • 确保你跑了 npm run build 成功地
  • 检查是否安装了Node.js: node --version (应为18.0.0或更高)
  • 完全重新启动应用程序

“找不到命令”错误?

  • 确保Node.js在您的系统PATH中
  • 尝试使用Node.js的完整路径: "/usr/local/bin/node" 或 "C:\Program Files\nodejs\node.exe"

JSON语法错误?

  • 在以下位置验证JSON Jsonlin.com
  • 确保所有引号都正确转义
  • 确保没有尾随逗号

还有问题吗?

  • 在GitHub上打开一个问题:
    • 您的操作系统
    • 错误消息(如有)
    • 您的配置文件(路径已编辑)

可用工具

WPCodebox工具

  • format_wpcodebox_snippet -设置WPCodebox的代码段格式
  • get_wpcodebox_guidelines -获取WPCodebox使用指南
  • validate_wpcodebox_snippet -验证代码段结构

古腾堡工具

  • generate_gutenberg_block -生成完整的古腾堡块码
  • generate_block_variation -生成块变化
  • generate_block_pattern -生成块图案
  • get_gutenberg_standards -获取Gutenberg开发标准

生成块工具

  • generate_gb_block -生成与GenerateBlocks兼容的块代码
  • generate_gb_styles -生成特定于GenerateBlocks的CSS
  • generate_gb_template -生成GenerateBlocks模板代码
  • get_generateblocks_guide -获取GenerateBlocks开发指南

WordPress实用工具

  • generate_php_function -生成WordPress PHP函数
  • generate_hook -生成WordPress操作或过滤器挂钩
  • generate_shortcode -生成WordPress短代码
  • generate_rest_endpoint -生成WordPress REST API端点
  • format_for_wpcodebox -设置WPCodebox的任何代码格式

可用资源

知识库资源

  • resource://wordpress-gutenberg-mcp/coding-standards -WordPress编码标准
  • resource://wordpress-gutenberg-mcp/gutenberg-patterns -古腾堡块状图案
  • resource://wordpress-gutenberg-mcp/generateblocks-guide -生成块指南
  • resource://wordpress-gutenberg-mcp/wpcodebox-format -WPCodebox格式
  • resource://wordpress-gutenberg-mcp/generatepress-guide -GeneratePress指南

例子

生成Gutenberg块

// Use the generate_gutenberg_block tool
{
  "name": "custom-card",
  "title": "Custom Card",
  "description": "A custom card block",
  "category": "design"
}

WPCodebox的格式代码

// Use the format_wpcodebox_snippet tool
{
  "title": "Custom Function",
  "code": "function my_function() { ... }",
  "language": "php",
  "description": "A custom WordPress function",
  "tags": ["function", "custom"]
}

生成WordPress钩子

// Use the generate_hook tool
{
  "type": "filter",
  "hook": "the_content",
  "callback": "modify_content",
  "description": "Modify post content"
}

发展

项目结构

BOIM-WP-MCP/
├── src/
│   ├── index.ts              # Main MCP server
│   ├── standards.ts           # Coding standards
│   └── tools/
│       ├── wpcodebox.ts      # WPCodebox tools
│       ├── gutenberg-blocks.ts # Gutenberg tools
│       ├── generateblocks.ts  # GenerateBlocks tools
│       └── wordpress-utils.ts # WordPress utilities
├── resources/
│   ├── coding-standards.md    # Coding standards guide
│   ├── gutenberg-patterns.md # Gutenberg patterns
│   ├── generateblocks-guide.md # GenerateBlocks guide
│   ├── wpcodebox-format.md    # WPCodebox format
│   └── generatepress-guide.md # GeneratePress guide
├── package.json
├── tsconfig.json
└── README.md

建筑

npm run build

发展模式

npm run dev

类型检查

npm run type-check

WordPress最佳实践

此MCP服务器遵循并执行WordPress最佳实践:

安全

  • 对所有用户输入进行消毒
  • 退出所有输出
  • 在表单中使用非字符
  • 检查用户能力
  • 验证和净化数据

演出

  • 尽量减少数据库查询
  • 使用瞬态进行昂贵的操作
  • 优化CSS/JS交付
  • 在适当的时候使用延迟加载

兼容性

  • GeneratePress主题兼容性
  • GenerateBlocks插件兼容性
  • WordPress编码标准合规性
  • 向后兼容性考虑

贡献

欢迎投稿!请遵循以下指南:

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 遵循WordPress编码标准
  5. 测试您的更改
  6. 提交拉取请求

许可证

MIT许可证-请参阅 许可证 详细信息文件

支持

对于问题、疑问或贡献,请在GitHub上打开问题。

致谢

  • WordPress编码标准社区
  • 为优秀主题组建印刷团队
  • GenerateBlocks团队致力于强大的区块收集
  • WPCodebox用于代码段管理

更新日志

1.0.1

  • 已删除WPCodebox格式覆盖(代码格式现在由默认代理处理)
  • 添加了SCSS格式规则

1.0.0

  • 初始版本
  • WPCodebox格式化工具
  • 古腾堡块生成
  • GenerateBlocks集成
  • WordPress实用工具
  • 编码标准验证
  • 知识库资源