Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/akmelias/fluent-abilities/archive/refs/heads/main.zipFluent Abilities (Beta)
A standalone, modular WordPress plugin that serves as a hub for Fluent product abilities along with custom abilities. It exposes capabilities from FluentCart, FluentCRM, FluentCommunity and other fluent plugins through the WordPress 6.9+ Abilities API for AI and MCP (Model Context Protocol) integration.
What Problem Does It Solve?
Managing Fluent plugins through traditional admin interfaces is time-consuming. This plugin enables natural language control of your entire Fluent ecosystem via AI assistants, allowing you to manage orders, customers, campaigns, communities, and more through simple conversational commands.
Features
- ✅ Standalone & Modular: Works independently, only registers abilities for active Fluent plugins
- ✅ Zero Conflicts: Uses unique prefixes (
fct_,fc_,fcm_) to prevent naming collisions - ✅ Secure: Integrates with granular permission systems from each Fluent product
- ✅ AI-Ready: Full MCP integration for Claude Desktop, Cursor, and other AI clients
- ✅ Future-Proof: Easy to extend with new Fluent products and custom abilities
Requirements
- WordPress 6.9+ (with Abilities API)
- PHP 7.4+
- Optional: One or more Fluent plugins:
- FluentCart - E-commerce (orders, products, coupons, subscriptions, reports) ✅
- FluentCRM - CRM (contacts, lists, tags, campaigns, companies) ✅
- FluentCommunity - Community & LMS (spaces, posts, courses, moderation) ✅
- FluentForms - Forms (submissions, entries) ⏳ Coming soon
Note: Safe to activate even if no Fluent plugins are installed. It will wait for them to be activated.
Quick Setup
1. Installation
- Upload
fluent-abilitiesto/wp-content/plugins/ - Activate via WordPress Plugins menu
- Plugin automatically detects active Fluent plugins and registers their abilities
2. AI Client Configuration
⭐ Recommended: Use the Remote Server Setup for production sites, remote servers, or when you want the most secure and reliable connection.
⭐ Recommended: Claude Desktop (Remote Server)
This is the recommended setup for most users, especially for production sites or remote WordPress installations.
Step 1: Create Application Password in WordPress
- Go to
Users → Your Profile → Application Passwords - Enter a name (e.g., "Claude Desktop")
- Click "Add New Application Password"
- Copy the password immediately (you won't see it again)
Step 2: Configure Claude Desktop
-
Open Claude Desktop Settings:
- macOS:
Claude Desktop → Settings → Developer → Edit Config - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Or manually edit the config file
- macOS:
-
Add MCP Server Configuration:
{
"mcpServers": {
"my-fluent-site": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://your-site.com/wp-json/mcp/mcp-adapter-default-server",
"WP_API_USERNAME": "your-username",
"WP_API_PASSWORD": "your-application-password"
}
}
}
}
Replace:
https://your-site.comwith your WordPress site URLyour-usernamewith your WordPress usernameyour-application-passwordwith the application password you created
- Restart Claude Desktop to load the configuration
Benefits of Remote Setup:
- ✅ Works with remote/production sites
- ✅ More secure (uses Application Passwords)
- ✅ No need for local WP-CLI access
- ✅ Works across different machines
- ✅ Better for team collaboration
Alternative: Claude Desktop (Local Setup)
For local development only, you can use WP-CLI directly:
-
Open Claude Desktop Settings:
- macOS:
Claude Desktop → Settings → Developer → Edit Config - Or manually edit:
~/Library/Application Support/Claude/claude_desktop_config.json
- macOS:
-
Add MCP Server Configuration:
{
"mcpServers": {
"my-fluent-site": {
"command": "wp",
"args": [
"--path=/path/to/your/wordpress",
"mcp-adapter",
"serve",
"--server=mcp-adapter-default-server",
"--user=your-admin-username"
]
}
}
}
- Restart Claude Desktop to load the configuration
Note: This requires WP-CLI installed locally and access to your WordPress installation files.
Cursor (Remote Server - Recommended)
-
Create Application Password (same as Claude Desktop setup above)
-
Open Cursor Settings:
Cursor → Settings → Features → Model Context Protocol- Or edit:
~/.cursor/mcp.json(create if it doesn't exist)
-
Add MCP Server Configuration:
{
"mcpServers": {
"my-fluent-site": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://your-site.com/wp-json/mcp/mcp-adapter-default-server",
"WP_API_USERNAME": "your-username",
"WP_API_PASSWORD": "your-application-password"
}
}
}
}
- Restart Cursor to load the configuration
Cursor (Local Setup)
For local development:
-
Open Cursor Settings:
Cursor → Settings → Features → Model Context Protocol- Or edit:
~/.cursor/mcp.json(create if it doesn't exist)
-
Add MCP Server Configuration:
{
"mcpServers": {
"my-fluent-site": {
"command": "wp",
"args": [
"--path=/path/to/your/wordpress",
"mcp-adapter",
"serve",
"--server=mcp-adapter-default-server",
"--user=your-admin-username"
]
}
}
}
- Restart Cursor to load the configuration
Troubleshooting
Connection Issues
"MCP Server not found" or "Connection failed"
Problem: Claude Desktop or Cursor cannot connect to your WordPress site.
Solutions:
-
Verify Application Password:
- Go to
Users → Your Profile → Application Passwords - Ensure the password was copied correctly (no spaces)
- Create a new application password if needed
- Go to
-
Check WordPress URL:
- Ensure the URL in your config is correct (include
https://orhttp://) - Verify the URL is accessible from your machine
- Test the endpoint:
https://your-site.com/wp-json/mcp/mcp-adapter-default-server
- Ensure the URL in your config is correct (include
-
Verify Permissions:
- Ensure your WordPress user has administrator privileges
- Check that the user account is active
-
Check WordPress REST API:
- Visit:
https://your-site.com/wp-json/ - If you see a JSON response, REST API is working
- If not, check your
.htaccessor server configuration
- Visit:
-
Firewall/Security Plugins:
- Temporarily disable security plugins to test
- Check if your firewall is blocking REST API requests
- Whitelist the
/wp-json/path if needed
"WP-CLI command not found" (Local Setup)
Problem: Claude Desktop cannot find the wp command.
Solutions:
-
Install WP-CLI:
- Visit: https://wp-cli.org/#installing
- Follow installation instructions for your OS
-
Verify WP-CLI Path:
- Run
which wpin terminal to find the path - Use full path in config:
"/usr/local/bin/wp"instead of"wp"
- Run
-
Check Permissions:
- Ensure WP-CLI is executable:
chmod +x /path/to/wp - Verify the WordPress path is correct
- Ensure WP-CLI is executable:
"Invalid credentials" or "Authentication failed"
Problem: Application password authentication is failing.
Solutions:
-
Recreate Application Password:
- Delete the old application password
- Create a new one and copy it immediately
- Ensure no extra spaces or characters
-
Check Username:
- Use your WordPress login username (not email)
- Verify the username is correct in your config
-
Verify HTTPS:
- Ensure your site uses HTTPS (required for Application Passwords)
- Check SSL certificate is valid
"Abilities not showing" or "No abilities available"
Problem: Claude Desktop connects but doesn't show Fluent Abilities.
Solutions:
-
Verify Plugin Activation:
- Go to
Pluginsin WordPress admin - Ensure "Fluent Abilities" is activated
- Check that at least one Fluent plugin (FluentCart, FluentCRM, FluentCommunity) is active
- Go to
-
Check Server Name:
- Verify the server name in config matches:
mcp-adapter-default-server - For custom servers, check the server name matches
- Verify the server name in config matches:
-
Restart AI Client:
- Fully quit and restart Claude Desktop or Cursor
- Sometimes a full restart is needed to reload MCP servers
-
Check Logs:
- In Claude Desktop: Check Developer Console for errors
- In WordPress: Check error logs for PHP errors
"Permission denied" errors
Problem: Abilities execute but return permission errors.
Solutions:
-
Check User Permissions:
- Ensure your WordPress user is an Administrator
- Verify the user has proper capabilities
-
Fluent Plugin Permissions:
- For FluentCart: Check role permissions in
FluentCart → Settings → Roles - For FluentCRM: Ensure user has
fluentcrm_managercapability - For FluentCommunity: Check community admin permissions
- For FluentCart: Check role permissions in
-
WordPress Capabilities:
- User needs
manage_optionscapability - Check user role in
Users → All Users
- User needs
Configuration Issues
JSON Syntax Errors
Problem: Config file has syntax errors.
Solutions:
-
Validate JSON:
- Use an online JSON validator
- Ensure all quotes are properly escaped
- Check for trailing commas (not allowed in JSON)
-
Common Mistakes:
- Use double quotes
"not single quotes' - No trailing commas after last item
- Properly escape backslashes in paths
- Use double quotes
-
Test Config:
- Start with minimal config
- Add one server at a time
- Test after each addition
Config File Not Found
Problem: Claude Desktop or Cursor cannot find the config file.
Solutions:
-
Claude Desktop Paths:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Create the file if it doesn't exist
- macOS:
-
Cursor Paths:
~/.cursor/mcp.json(create if doesn't exist)- Or use Settings UI:
Cursor → Settings → Features → Model Context Protocol
-
File Permissions:
- Ensure file is readable
- Check file ownership matches your user
Plugin-Specific Issues
"FluentCart abilities not available"
Solutions:
- Verify FluentCart is installed and activated
- Check FluentCart version compatibility
- Ensure FluentCart Pro is activated (if using Pro features)
"FluentCRM abilities not available"
Solutions:
- Verify FluentCRM is installed and activated
- Check FluentCRM database tables exist
- Try deactivating and reactivating FluentCRM
"FluentCommunity abilities not available"
Solutions:
- Verify FluentCommunity is installed and activated
- Check FluentCommunity database tables exist
- Ensure you have community admin permissions
Still Having Issues?
-
Check WordPress Debug Log:
- Enable
WP_DEBUGinwp-config.php - Check
wp-content/debug.logfor errors
- Enable
-
Test REST API Endpoint:
curl -X GET "https://your-site.com/wp-json/mcp/mcp-adapter-default-server" -
Test with WP-CLI:
wp mcp-adapter serve --server=mcp-adapter-default-server --user=your-username -
Get Support:
- Visit: fluentabilities.com
- Include error messages and configuration details (remove sensitive info)
Usage
Natural Language Examples
E-commerce Management:
"Show me all orders from today that need to be shipped"
"Create a 25% discount coupon 'SPRING25' valid for 7 days"
"Process a refund for order #5678"
"Update inventory for Blue T-Shirt to 50 units"
Customer & Marketing:
"Add all customers who purchased in the last 30 days to the VIP list"
"Tag all subscribers with lifetime value over $1000"
"Send welcome email to new community members"
Community & Courses:
"Create a new course space for 'Email Marketing Mastery' buyers"
"Enroll all yesterday's course purchasers automatically"
"Show me reported content that needs moderation"
Multi-Product Workflows:
"Find customers with failed subscriptions, tag them, and send recovery email"
"Create a product, set up course space, and add buyers to email list"
"Generate sales report and post summary in community"
Programmatic Usage
PHP:
if (wp_has_ability('fluentcart/get-orders')) {
$result = wp_get_ability('fluentcart/get-orders')->execute([
'status' => 'completed',
'date_from' => '2025-01-01'
]);
}
REST API:
curl -X POST "https://yoursite.com/wp-json/wp/v2/abilities/fluentcart/get-orders" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"status": "completed", "per_page": 10}'
Available Abilities
FluentCart
- Order management (get, refund, update status)
- Product management (create, update inventory, low stock alerts)
- Coupon management (create discounts)
- Subscription management (cancel, failed payments)
- Reporting (sales, revenue, customer LTV)
FluentCRM
- Contact management (get, create, update)
- Lists & Tags (manage segmentation)
- Companies (create, update, notes)
- Reporting (email stats, engagement)
FluentCommunity
- Spaces (create, manage, add members)
- Posts (create, moderate)
- Courses (enroll, manage)
- Moderation (reports, content review)
Permissions
All abilities respect WordPress and Fluent plugin permission systems:
- WordPress Admins: Full access to all abilities
- FluentCart Pro: Granular role-based permissions (Manager, Staff, Custom)
- FluentCRM: Subscriber capability checks
- FluentCommunity: Community roles and space permissions
Configure permissions in each plugin's settings.
Future Plans
Version 1.1+
- Custom Abilities Builder: UI to create custom abilities without code
- FluentForms Integration: Form submissions, entries, and management
- Additional Fluent Products: Automatic support for new Fluent ecosystem plugins
- Ability Marketplace: Share and import custom abilities
- Advanced Workflows: Chain multiple abilities with conditional logic
Long-Term Vision
- Complete coverage of all Fluent product capabilities
- Visual workflow builder for complex automation
- Third-party ability extensions
- Enterprise-grade permission templates
Development
Adding New Abilities
wp_register_ability('fluentcart/my-ability', [
'label' => __('My Ability', 'fluent-abilities'),
'description' => __('What it does', 'fluent-abilities'),
'category' => 'fluentcart-order-management',
'input_schema' => [...],
'output_schema' => [...],
'execute_callback' => 'my_callback_function',
'permission_callback' => 'my_permission_check',
]);
See plugin structure in includes/ for examples.
Changelog
1.0.0
- Initial release
- FluentCart, FluentCRM, and FluentCommunity abilities
- MCP integration
- Permission system integration
License
GPLv2 or later
Support
Developed by the FluentAbilities Team
fluentabilities.com