Overview
The miniOrange OTP Verification plugin exposes its functionality as AI Abilities built on the native WordPress Abilities API (WordPress 6.9+). These abilities can be used by AI agents such as Cursor, Claude, GitHub Copilot, and ChatGPT to send and verify OTPs, manage forms, configure gateways, and troubleshoot the plugin — without an administrator manually navigating the WordPress dashboard.
Every ability shares three core characteristics:
- Triggerable by administrator intent — an agent detects what the admin wants (or the error they mention) and picks the matching ability automatically.
- Executes a supported action — sending an OTP, updating a setting, blocking a number, running diagnostics, and so on.
- Returns a clear result — a confirmation message, the requested data, or the next recommended step.
AI agents can automatically detect intent and invoke the relevant ability without requiring manual navigation.
How it works
- All abilities are registered under the
mo-otpcategory. - Each ability declares a JSON input schema, a JSON output schema, and a permission check.
- Abilities are exposed over the WordPress REST API, so agents can list, inspect, and run them.
- Only WordPress administrators (
manage_options) — or an MCP request carrying the correct API key — can run an ability.
Endpoints
| Action | Method | URL |
|---|---|---|
| List all abilities | GET | /?rest_route=/wp-abilities/v1/abilities |
| Get one ability's schema | GET | /?rest_route=/wp-abilities/v1/abilities/mo-otp%2F{ability} |
| Run an ability | POST | /?rest_route=/wp-abilities/v1/abilities/mo-otp%2F{ability}/run |
Run request body (the input is always wrapped in an input object):
{ "input": { "channel": "sms", "phone": "+1-415-XXX-XX38" } }Example response:
{ "success": true, "message": "OTP sent successfully via SMS.", "tx_id": "1234abcd" }List of Abilities