Code Engine – PHP Snippets, AI Functions & Automation for WordPress
Code Engine is a snippets manager that doesn’t stop at snippets. Yes, it runs your PHP and JavaScript exactly where and when you want: frontend, backend, on a schedule, or inside your content. But its real magic is what happens after you write a function: the same little piece of code instantly becomes a tool your AI chatbots can call, a step you can drag into a visual workflow, and an endpoint the outside world can trigger. One function, three superpowers. Most “code snippets” plugins stop at a textarea and a toggle. Code Engine treats your functions as first-class building blocks for the whole Meow Apps ecosystem, and for anything that can speak REST. Think out of the box, let your creativity flow, because the possibilities really are endless! ✨ For more, check the official website and come say hi on the Discord. Quick Intro Hello! ☀️ I built Code Engine because I was tired of pasting mystery snippets into functions.php and praying. I wanted a place where small bits of code are organized, safe, AI-assisted, and reusable everywhere. Here’s the idea. You write a function (or let the AI write it for you from a plain-English description). That function immediately shows up in three places: AI Engine: your chatbots and MCP clients (Claude, ChatGPT, Claude Code) can call it as a tool, with real arguments. Ask “how many orders shipped today?” and your chatbot runs your function to answer. Workflow Engine: your function appears in the step picker as its very own block. Drag it onto the canvas, wire it between an AI step and a Slack step, done. No glue code. REST / External tools: give it a secure endpoint and a token, then trigger it from Make.com, n8n, Zapier, a cron job, or a webhook. You never wrote an “integration.” You just wrote a function. Code Engine did the rest. 🤝 Core Modules 🧩 Snippets Manager Backend, Frontend, Persistent, Scheduled, Functions, and in-content (PHP/JS) snippets, all in one clean dashboard with tags, search, scope filters, and priorities. 🪄 AI-Assisted Coding Describe what you want in plain English and let AI Engine write the snippet: code, name, arguments, and scope included. Refine existing code or implement it straight from your comments. 🤖 Functions as AI Tools Every Function snippet becomes a function-calling tool and an MCP tool, so your AI Engine chatbots (and external AI agents) can actually do things on your site, not just talk. 🔀 Functions as Workflow Steps Workflow Engine surfaces each of your functions as its own draggable step. Your custom logic becomes a first-class citizen on the automation canvas. 🌐 External Access (REST) Expose any runnable snippet through a secured REST endpoint with a bearer token. Perfect for Make.com, n8n, webhooks, and scheduled external jobs. 🛡️ Safe Mode A snippet that throws a fatal error is automatically caught and disabled before it can take your site down. Code with confidence. ⏰ Scheduling Run a snippet daily at a chosen time via WP-Cron (reports, cleanups, syncs) without touching the server crontab. 🧱 Code Blocks & Shortcodes (Pro) Drop PHP or JS straight into a post or page with a Gutenberg block or the [code-engine] shortcode, with safety guards. 🧩 Snippets, the way they should be Code Engine organizes your code by scope, so each snippet runs exactly where it belongs: Persistent: runs everywhere (frontend and backend). Your everyday “add this to functions.php” code, but managed. Frontend: runs only on the public site. Backend: runs only in the admin. Function: a named, callable function with typed arguments and defaults. This is the reusable building block (see below). Scheduled: runs on a WP-Cron schedule, at the hour and minute you pick. Content (PHP / JS): runs inside a specific post or page, via a Gutenberg Code Block or the [code-engine] shortcode (Pro). Everything is searchable, taggable, sortable by priority, and importable/exportable. The CodeMirror editor gives you proper syntax highlighting and keyboard shortcuts (Cmd+S to save, Cmd+Enter to run). A nikic/php-parser pass validates your PHP before it ever runs. 🪄 Let AI write it for you Don’t feel like writing the boilerplate? Describe the snippet in plain language and Code Engine, powered by AI Engine, generates the whole thing: the code, a sensible name, a description, the right scope, and, for functions, the argument list with names, types, and defaults. Already have code? Ask the AI to modify it from a prompt, or write a few comments describing what you want and let it fill in the implementation. It’s pair programming, right inside your dashboard. ✨ The big idea: write once, use everywhere This is what makes Code Engine different. A Function snippet is not just code you call from other code. It’s a reusable capability that the rest of your stack can plug into. The moment you save it, the same function is available in three places at once: 1. As an AI tool, for chatbots and AI agents With AI Engine active, your functions are exposed through function calling and over MCP (Model Context Protocol). Your on-site chatbot can run them mid-conversation, and external AI agents (Claude, Claude Code, ChatGPT, OpenClaw) can call them too. Want a chatbot that checks stock, looks up a booking, or kicks off a process? Write the function; the chatbot gains the skill. 2. As a workflow step, for automation With Workflow Engine, every active function shows up in the Add-step picker as its own block, named after your snippet, with one input per argument. Drag it onto the canvas and wire it between other steps: an AI step that summarizes, your function that saves, a Social Engine step that posts. There’s also a generic “Execute snippet (by ID / by name)” step when you want to call one dynamically. You never write integration code; your function is the integration. 3. As a REST endpoint, for the outside world Give a snippet a custom endpoint name and a bearer token, and it’s instantly callable from anywhere: POST /wp-json/code-engine/v1/snippets-endpoint/your-endpoint Pass arguments as JSON in the body, secure it with a token, and trigger it from Make.com, n8n, Zapier, GitHub Actions, or a humble cron job. Automation without a middleware bill. 🛡️ Safe by default Running arbitrary code is powerful, so Code Engine takes safety seriously: Safe Mode catches fatal errors and auto-disables the offending snippet, so a typo never white-screens your site. REST whitelisting means global snippets only run on trusted REST routes by default, so you choose what to open up. Per-snippet tokens secure your external endpoints. Validation with a real PHP parser before code is saved. For developers who want fewer guardrails, there’s a “Bypass REST Security” option and filters (mwcode_rest_authorized, mwcode_rest_whitelist) to tailor exactly what’s allowed. Works beautifully with the Meow Apps family Code Engine is one engine in a connected set, each one useful alone, magical together: AI Engine: chatbots, content generation, and MCP. Turns your functions into AI tools. Workflow Engine: visual automation. Turns your functions into draggable steps. SEO Engine: smart, lightweight AI SEO. Social Engine: schedule and automate social posts. Why Code Engine? Reusable, not throwaway Other snippet plugins give you a place to paste code. Code Engine gives you a place to build capabilities that your AI, your workflows, and your external tools can all use. Native to WordPress Clean, fast, and built the WordPress way. No clunky external dashboards, no bloat. AI-native Write snippets with AI, expose them to AI. The whole loop lives in your wp-admin. Developer friendly REST API, MCP tools, function calling, scheduling, import/export, and plenty of filters to hook into. Cared for Part of the Meow Apps family, with regular updates and a real human behind it. 💕
My Site Hand – AI Assistant, Site Health & MCP Server for WordPress
My Site Hand finds what is wrong with your WordPress site, and helps you fix it. Activate the plugin and it scans your site straight away. No token, no API key, no Node.js, no terminal. About thirty seconds later you get a health score out of 100 and a list of real problems on your own site — and you can repair most of them inline, right there in the report. 🔍 The Site Health Scan (no setup required) Twelve checks, run one at a time so nothing times out. Broken links — checks the links in your recent posts and pages, and reports only the ones that are genuinely gone. Anything ambiguous is left alone rather than reported as a false alarm. Missing alt text — images your visitors using screen readers cannot see, and search engines cannot read. Missing meta descriptions — published posts and pages with no SEO description, for Yoast SEO and RankMath. Oversized media — files big enough to slow your pages down, with the space you would get back. Orphaned files — uploads that nothing on your site appears to use. Plugin and core health — pending updates, an unsupported PHP version, missing HTTPS, errors visible to visitors, a stalled cron. Images missing dimensions — the cause of pages that jump around while they load, which Google measures as a Core Web Vital. Images missing lazy loading — pictures further down a post that something has opted out, so visitors download them before they are ever seen. Exposed WordPress files — readme.html, license.txt and a debug log left publicly readable. The first hands an attacker your exact version; the last can contain server paths and credentials. XML-RPC — reported as a notice, with the tradeoff stated plainly. It is a brute-force vector, but the WordPress mobile app and Jetpack need it, so this is only worth turning off if you use neither. Sites running Jetpack are skipped entirely. Thin content — published pages with very few words. Read with judgement: a contact page is supposed to be short, and pages built from a shortcode, gallery or embed are left out. Accessibility basics — links that announce nothing to a screen reader, “click here” links, more than one main heading, and headings that skip a level. Structural checks only; it does not claim to be a full audit. ⚡ Quick Fix A list of complaints is not much use on its own. Write alt text straight into the report, replace a dead link, or trash a file you no longer need — one row at a time, with the score climbing as you go. No AI and no API key required for any of it. Your score is kept over time, so you can watch the site improve, and you can have a short report emailed to you when something changes. 📤 Send the report to someone else A report is more useful when the person who needs to act on it can read it. PDF — opens a clean, printable page and your browser’s own print dialog. Choose “Save as PDF”. No bloated PDF library bundled into the plugin to do a job your browser already does well. CSV — every issue as a row: check, severity, issue, context, link and object ID. Opens correctly in Excel and Google Sheets, in any language. A shareable link — a public web page your client can open without a login, with an expiry you choose: 7, 30 or 90 days. There is no never-expires option. Shared reports are redacted on purpose. They show the score, each check by name, and how many issues it found. They never show file names, page addresses, server paths, post or media IDs, edit links, or your plugin, theme, PHP and WordPress versions — and the two security checks are left out entirely, because publishing those would be publishing a vulnerability report about your own server. The page tells you exactly what a recipient will and will not see before you create the link, every link can be revoked instantly, and the report is a snapshot: re-scanning your site never changes what you already sent. 🤖 And when you want an AI to do the work Everything above works on its own. Connecting an AI assistant is the optional upgrade. Built on the open standard Model Context Protocol (MCP) developed by Anthropic (the creators of Claude), this plugin securely exposes safely-gated capabilities (Abilities) to clients like Claude Desktop, Cursor, and VS Code, so they can work on your site using plain language. 🚀 What an AI assistant can do for you: Write & Edit Content – Ask Claude to draft, edit, format, or publish posts and pages directly on your site. AI-Driven SEO Audits – Let your AI scan Yoast or RankMath metadata, optimize it for targeted keywords, and update titles/descriptions instantly. WooCommerce Store Management – Ask your AI to list low-stock items, draft product listings, check recent orders, or summarize sales analytics. Site Health & Diagnostics – Let the AI inspect PHP error logs, check loopback status, or look up site details to debug issues. Zero-Config Automated Setup – No manual editing of hidden JSON config files. Copy a single command from your WordPress dashboard, paste it into your terminal, and Claude connects automatically! Total Safety & Security – All tokens are SHA-256 hashed. You can toggle specific abilities (like writing or deleting) on/off with simple switches, and monitor everything the AI does in real-time with the built-in Audit Log. 📦 Included Modules: Content — posts, pages and custom post types (9 abilities) SEO — analysis and meta management, for Yoast SEO and RankMath (6) Diagnostics — site health, error logs, cron and database details (7) Media — the media library, including alt text (6) Users — accounts and roles (5) WooCommerce — products, orders and coupons (12, registers only when WooCommerce is active) That is 33 abilities on a standard install, or 45 with WooCommerce. Every one of them is an individual switch, and a token can only call what you allow. 🔒 Security API tokens are SHA-256 hashed — the raw token is shown once and never stored. Every token is scoped to specific abilities. A token can only do what you explicitly allow. Optional IP allowlist restricts a token to specific addresses or CIDR ranges. Tokens are sent via the Authorization header, never in the URL. Every action is written to a searchable audit log with configurable retention. ⚠️ Important Requirements (Honest & Transparent): The Site Health scan and Quick Fix need none of the following. They apply only if you choose to connect an AI assistant: Node.js: The automated desktop bridge (mcp-remote) requires Node.js installed on your local computer to run. SSL/HTTPS: For security, your site must run on HTTPS so your API tokens remain encrypted in transit. Administrator Access: You must be an administrator to generate API tokens and toggle module permissions. External Services Link Checker (SEO Module) When the check-broken-links ability is called via the MCP API, this plugin sends HTTP HEAD requests to URLs found in your post content to verify they are reachable. No personal user data is transmitted — only a standard HTTP request is made to each URL being checked. This is triggered only when explicitly called by an authorized API token holder. Link Checker (Site Health scan) The Broken Links check in the Site Health scan sends HTTP HEAD requests (and, where a server refuses HEAD, a single ranged GET) to the links found in your 50 most recent published posts and pages, to see whether they still resolve. The request identifies this plugin and your site URL in its user agent. No personal user data is transmitted. Results are cached for 12 hours. This runs when you start a scan from the admin, and during the scheduled scan if you leave that enabled — on sites with more than 500 published posts the link check is skipped on the schedule. Turning scheduled reports off in My Site Hand → Settings stops the scheduled scan entirely. Requests this plugin makes to your own site The Exposed WordPress Files and XML-RPC checks ask your own site, over HTTP, whether /readme.html, /license.txt, /wp-config-sample.php, /wp-content/debug.log and /xmlrpc.php answer to an anonymous visitor. These are loopback requests to your own domain, not to any third party, and no data is sent in them. Results are cached for 12 hours. If your host blocks loopback requests, both checks report that they could not run rather than reporting your files as safe. Shared report links Creating a share link stores a redacted snapshot of your scan in your own database and serves it from your own site at a tokenized URL. Nothing is uploaded anywhere. The page is sent with X-Robots-Tag: noindex, nofollow, every link expires, and you can revoke one at any time. No data is sent to any third-party analytics or tracking service by this plugin.