Title: MWD AI Assistant &#8211; Local Lead Generation
Author: arashkhalaj
Published: <strong>September 18, 2026</strong>
Last modified: September 20, 2026

---

Search plugins

![](https://ps.w.org/mwd-ai-assistant-local-lead-generation/assets/banner-772x250.
png?rev=3703829)

![](https://ps.w.org/mwd-ai-assistant-local-lead-generation/assets/icon-256x256.
png?rev=3703829)

# MWD AI Assistant – Local Lead Generation

 By [arashkhalaj](https://profiles.wordpress.org/arashkhalaj/)

[Download](https://downloads.wordpress.org/plugin/mwd-ai-assistant-local-lead-generation.1.2.9.zip)

 * [Details](https://wordpress.org/plugins/mwd-ai-assistant-local-lead-generation/#description)
 * [Reviews](https://wordpress.org/plugins/mwd-ai-assistant-local-lead-generation/#reviews)
 * [Development](https://wordpress.org/plugins/mwd-ai-assistant-local-lead-generation/#developers)

 [Support](https://wordpress.org/support/plugin/mwd-ai-assistant-local-lead-generation/)

## Description

MWD AI Assistant is a WordPress AI assistant built for service businesses, local
businesses, and websites where visitors regularly ask questions before contacting
the company.

It helps visitors get fast, consistent answers about your services, service areas,
policies, processes, common questions, and other information you choose to provide.

Instead of relying on a generic chatbot, you control what the assistant knows. Add
your own business instructions and approved questions and answers, connect your 
OpenAI API account, and place the assistant on your website as a floating chat widget
or inline anywhere using a shortcode.

### Help visitors find the right information

Visitors often leave a website when they cannot quickly find the answer they need.

MWD AI Assistant gives them a simple way to ask questions directly from the page.
The assistant can use your instructions and approved manual answers to help visitors
understand your business and decide what to do next.

This can be useful for questions such as:

 * What services do you provide?
 * Which areas do you serve?
 * How does your process work?
 * What should I prepare before contacting you?
 * Where can I find a specific service or page?
 * What are your general policies or frequently asked questions?

You decide what information is provided to the assistant.

### Free version features

The Free edition includes:

 * One AI assistant for your WordPress website.
 * Floating chat widget for site-wide access.
 * `[mwd_ai_assistant]` shortcode for inline placement.
 * Manual questions and approved answers without a paid answer-count quota.
 * Custom business instructions for the assistant.
 * Connection to your own OpenAI API account.
 * Automatic matching of the visitor’s language.
 * RTL and LTR language support.
 * Configurable colors, sizing, labels, and interface options.
 * Website font inheritance for better visual integration.
 * Recent conversation history for troubleshooting and continuity.
 * Encrypted storage of the OpenAI API key.
 * Built-in administrator Help & Support form.
 * No plugin license required for the Free edition.
 * No trial expiration or paid activation required to keep the Free assistant working.

OpenAI API usage is billed separately through your own OpenAI API account. A ChatGPT
subscription does not include OpenAI API usage.

### Built for business websites

MWD AI Assistant is especially useful for websites where customers usually have 
questions before they are ready to call, request a quote, make a booking, or contact
the business.

Common use cases include local service companies, contractors, agencies, repair 
businesses, professional services, clinics, and other service-based websites.

The Free edition focuses on answering visitor questions and guiding users with information
you provide. It does not include the lead collection and business automation features
available in the separate Pro edition.

### Simple setup

Getting started requires only a few steps:

 1. Add your OpenAI API key.
 2. Write the main instructions for your assistant.
 3. Add verified questions and answers under Manual Training.
 4. Customize the appearance and labels.
 5. Enable the floating widget or place the shortcode where you want the assistant 
    to appear.

You remain responsible for reviewing the information provided to the assistant and
for testing conversations before publishing it on a live website.

### Optional Pro edition

MWD AI Assistant Pro is a separate commercial plugin for businesses that need more
than question answering.

The Pro edition adds features such as website knowledge, lead collection, analytics,
and additional business tools.

Free does not require a Pro license and does not download or install premium code.
Current plans and pricing are shown from the Upgrade section when requested.

If you later move from Free to a compatible Pro release on the same website, supported
Free settings, encrypted credentials, manual training, and retained conversation
history can be migrated while preserving existing Pro configuration.

Back up your website before switching editions and deactivate Free before activating
Pro.

### External services

#### OpenAI

When the assistant is enabled, an API key is configured, and a visitor sends a message,
the server calls `https://api.openai.com/v1/responses`. It sends your configured
system instructions, up to five relevant manual answers, the current visitor message,
and up to twelve recent messages from that session. Common email addresses, North
American phone numbers and Canadian postal codes are masked in visitor/history text
before it is sent. Approved public manual-answer facts are kept intact. Your API
key authenticates that server request and is not sent to the visitor’s browser.

Requests set `store=false`. This does not remove OpenAI’s separate abuse-monitoring
retention; processing depends on your API account’s data controls. The site owner
is responsible for the privacy notice, consent where required, and the provider 
account. A ChatGPT subscription does not include API credits.

 * API terms: https://openai.com/policies/services-agreement/
 * Privacy: https://openai.com/policies/privacy-policy/
 * API data controls: https://developers.openai.com/api/docs/guides/your-data

#### Freemius

Only when an administrator opens plans and current pricing, the plugin requests 
the public catalog from `api.freemius.com`. The request contains the public product
ID/key, request date and plugin version. It does not include the site URL, administrator
name/email, chat content, or private credentials. As with any network request, the
service receives the server’s network address. Catalog results may be cached for
five minutes.

Continuing to checkout opens `checkout.freemius.com` with the selected plan, price
option, currency, site allowance, billing period, and return-navigation URL. Freemius
handles information the purchaser enters there. Free contains no Freemius licensing/
tracking SDK, remote updater, or activation requirement.

 * Terms: https://freemius.com/terms/
 * Privacy: https://freemius.com/privacy/

#### Maple Web Design support

Submitting the administrator support form deliberately sends an email to `info@maplewebdesign.
ca` using your WordPress mail service. It contains the reply address, site URL, 
WordPress and plugin versions, subject, and message disclosed beside the form. Do
not include API keys, passwords, license keys, or private customer data. Ordinary
chat use sends no messages to Maple Web Design. Product and contact links open only
when clicked.

### Privacy

Review the External services and retention sections before publishing the assistant.
WordPress Settings > Privacy includes suggested text from this plugin for your site’s
policy. Do not request sensitive personal information through this chat. Neither
session identifiers nor automatic pattern masking should be treated as proof that
a conversation contains no personal data.

### Source code and credits

Readable PHP, JavaScript, CSS, SVG, and Persian PO sources are included; no build
step is required. Plugin code and supplied artwork are distributed under GPL-2.0-
or-later. jQuery and the color picker are loaded from WordPress core, not bundled
from external servers.

The public catalog client follows the Freemius public-scope API authentication protocol.
Reference: https://github.com/Freemius/wordpress-sdk/tree/2.13.4 . Hosted checkout
documentation: https://freemius.com/help/documentation/checkout/integration/hosted-
checkout/ . No remote code is downloaded or executed.

### Knowledge security

Only add customer-facing information to manual answers and business instructions.
Never put confidential records or credentials in model context. Prompt-injection
defenses reduce risk and do not guarantee resistance to every input. The chat model
has no private database, admin or filesystem tools.

## Screenshots

[⌊Front-end AI assistant in action, answering visitor questions using approved business
information and maintaining context across follow-up questions.⌉⌊Front-end AI assistant
in action, answering visitor questions using approved business information and maintaining
context across follow-up questions.⌉[

Front-end AI assistant in action, answering visitor questions using approved business
information and maintaining context across follow-up questions.

[⌊Main assistant settings with floating or inline display options, shortcode placement,
OpenAI connection, model selection, and output controls.⌉⌊Main assistant settings
with floating or inline display options, shortcode placement, OpenAI connection,
model selection, and output controls.⌉[

Main assistant settings with floating or inline display options, shortcode placement,
OpenAI connection, model selection, and output controls.

[⌊Manual Training lets you add verified questions and approved answers that the 
assistant can use when responding to visitors.⌉⌊Manual Training lets you add verified
questions and approved answers that the assistant can use when responding to visitors
.⌉[

Manual Training lets you add verified questions and approved answers that the assistant
can use when responding to visitors.

[⌊Customize the assistant identity, welcome message, conversation language, text
direction, and system instructions for your business.⌉⌊Customize the assistant identity,
welcome message, conversation language, text direction, and system instructions 
for your business.⌉[

Customize the assistant identity, welcome message, conversation language, text direction,
and system instructions for your business.

[⌊Customize the widget appearance, including colors, text sizes, launcher size, 
and chat window dimensions.⌉⌊Customize the widget appearance, including colors, 
text sizes, launcher size, and chat window dimensions.⌉[

Customize the widget appearance, including colors, text sizes, launcher size, and
chat window dimensions.

[⌊Recent conversation history helps administrators review visitor questions and 
assistant responses for troubleshooting and improvement.⌉⌊Recent conversation history
helps administrators review visitor questions and assistant responses for troubleshooting
and improvement.⌉[

Recent conversation history helps administrators review visitor questions and assistant
responses for troubleshooting and improvement.

[⌊Built-in Help & Support area with documentation, setup assistance, and a support
request form.1. Assistant configuration and API connection in the WordPress dashboard.⌉⌊
Built-in Help & Support area with documentation, setup assistance, and a support
request form.1. Assistant configuration and API connection in the WordPress dashboard
.⌉[

Built-in Help & Support area with documentation, setup assistance, and a support
request form.1. Assistant configuration and API connection in the WordPress dashboard.

## FAQ

### Why is the assistant unavailable?

Check **Enable assistant**, your saved API key, and the selected OpenAI model. After
a failed provider request, the plugin’s administrator page shows guidance for connection,
authentication, usage-limit, or response problems. Check OpenAI API billing and 
project permissions; a ChatGPT subscription is separate. Visitors receive a general
error without private provider diagnostics.

### How do I change or remove the API key?

Enter a replacement key and save. Leaving the field blank preserves the existing
key. Disable the assistant to stop new chat and session requests, including requests
from cached pages. To remove all saved plugin data, use the uninstall option described
below. A key supplied through the optional `MWDAIF_OPENAI_API_KEY` constant in wp-
config.php overrides the dashboard key; your site administrator must manage that
constant. After moving to a site with different WordPress security salts, enter 
the key again.

### How much conversation data is stored?

Active session context retains up to sixteen messages locally with the same common-
identifier masking as administrator History. Each session expires seven days after
creation; later messages do not extend it. Separately, administrator History stores
up to 50 recent exchanges, with truncated questions/answers and a one-way hash of
the session identifier. Common email addresses, North American phone numbers, and
Canadian postal codes are masked in that history. This is not comprehensive anonymization.

Expired history is filtered and removed on access and by hourly WordPress cron. 
Expired sessions are rejected even if a cache still holds their data. Physical cleanup
may be delayed by an inactive plugin, unavailable cron, or hosting backups. Configure
reliable WordPress cron on low-traffic sites. Backups follow your host’s separate
retention policy.

### How are abusive requests limited?

Session creation and chat each allow up to 15 requests per IP fingerprint in a fixed
calendar-minute window. Visitors behind the same public IP share that allowance.
Counters use a keyed hash, not the raw IP, and become eligible for cleanup after
one hour. Concurrent replies within the same session are serialized. These are technical
safety and privacy bounds, with no paid unlock. Use your provider’s account controls
and hosting protections to manage public-site usage. Requests already sent cannot
be recalled by disabling or resetting the chat.

### Is RTL supported?

Yes. Choose automatic direction or force RTL/LTR. The dashboard follows WordPress
language direction. The widget inherits the website font and does not request Google
Fonts or other external fonts.

### What happens when I uninstall?

Configuration, the encrypted key, manual answers, and retained history are preserved
by default for reinstalling. For removal, enable **Permanently delete all Free plugin
data on uninstall**, save, then delete the plugin through WordPress. This removes
those options and enumerated database transients on that site. Sessions held by 
an external object cache expire through that cache’s TTL; the plugin does not flush
unrelated cached data. Cron events, technical counters, leases, and the last diagnostic
category are removed independently of that preference. In Multisite, the deletion
preference applies separately to each site.

If older editions left this product’s local licensing records, deleting the last
Free/Pro edition clears the product-specific local connection while preserving shared
account users and unrelated plugins. It does not cancel a subscription or release
an activation remotely. An ordinary update preserves these records.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“MWD AI Assistant – Local Lead Generation” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ arashkhalaj ](https://profiles.wordpress.org/arashkhalaj/)

[Translate “MWD AI Assistant – Local Lead Generation” into your language.](https://translate.wordpress.org/projects/wp-plugins/mwd-ai-assistant-local-lead-generation)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/mwd-ai-assistant-local-lead-generation/),
check out the [SVN repository](https://plugins.svn.wordpress.org/mwd-ai-assistant-local-lead-generation/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/mwd-ai-assistant-local-lead-generation/)
by [RSS](https://plugins.trac.wordpress.org/log/mwd-ai-assistant-local-lead-generation/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.2.9

 * Load the dashboard menu icon stylesheet through the WordPress enqueue API instead
   of printing a style element.

#### 1.2.8

 * Separate approved reference answers from system instructions, block common protected-
   data extraction prompts, and filter configured API credentials from model inputs
   and output.
 * Mask common visitor contact identifiers before provider transport and active-
   session storage; preserve approved public contact information in manual answers.
 * Existing encrypted-key storage, settings names and session lifetime remain unchanged.

#### 1.2.7

 * Align the WordPress.org package folder, Text Domain and translation catalogs 
   with mwd-ai-assistant-local-lead-generation.
 * Use WordPress on-demand translation loading with the bundled Persian catalog 
   as a fallback.
 * Prevent conflicting Free classes when an older manually installed directory is
   still active.
 * Preserve existing settings, encrypted keys, training, history and the internal
   upgrade menu.

#### 1.2.6

 * Keep private provider errors out of public chat and show safe troubleshooting
   guidance to administrators.
 * Validate response status and content; handle refusals and incomplete replies 
   correctly.
 * Preserve backslashes in messages and use the selected model’s non-reasoning mode
   for short replies.
 * Protect concurrent session replies and history writes from overwriting each other.
 * Recover expired sessions in every interface language and prevent old requests
   from repopulating a reset chat.
 * Remove expiring public-page nonces and validate complete request origins and 
   session parameters.
 * Preserve settings on partial saves and handle failed or repeated API-key sanitization
   safely.
 * Improve mobile sizing, labels, keyboard controls, optional browser-storage handling,
   and Persian translations.
 * Clarify external services, data retention, updates, and uninstall behavior.

#### 1.2.5

 * Enforce the assistant’s enabled setting in both display modes and both public
   REST endpoints before storage or provider calls.
 * Add independent atomic per-minute chat/session abuse counters; remove stale counters
   during scheduled cleanup and uninstall.
 * Hide and remove expired history on access and add hourly, per-site cleanup; enforce
   a fixed seven-day session lifetime.
 * Clarify scheduling, backups, shared-IP limits and non-commercial retention in
   privacy documentation.
 * Restore WordPress.org View details unchanged and add Product website as a separate
   publisher link.
 * Remove the entire shared licensing SDK from Free; retain public live pricing 
   and hosted Freemius checkout through a readable, narrowly scoped client. No SDK
   files in Pro or another plugin are edited.
 * Preserve Free settings, encrypted keys, training, valid history and the separate
   Pro upgrade flow.

#### 1.2.4

 * Points product information to the Maple Web Design landing page and preserves
   the linked author attribution. While an edition is active, View details in this
   plugin’s installed-list row opens that page. Directory search and update-information
   dialogs remain unchanged.

#### 1.2.3

 * Clear only this product’s local license state when the last core edition is deleted;
   preserve unrelated Freemius products and opt-in business-data retention.
 * Complete the first-party Persian catalog and replace stale SDK upgrade/download
   notices with the existing Upgrade guidance.

#### 1.2.2

 * Rebuilt plan comparison with independent purchase choices, specific plan benefits
   and live published pricing.
 * Distinguished the installed Free edition from existing paid account licenses.
 * Disabled the SDK remote premium-installer action and automatic-install checkout
   flow in Free.

#### 1.2.1

 * Removed all paid-feature preview menus and panels; product comparisons appear
   only on Upgrade.
 * Removed the commercial 20-answer quota and optional SDK trial promotion. Free
   chat is not license-gated.
 * Preserved existing settings, training, history and same-site Pro migration.

#### 1.2.0

 * Historical 1.2.0 only: added paid preview menus. Removed in 1.2.1; not present
   in the current Free edition.
 * Documented automatic same-site migration to Pro 3.0.5 for settings, credentials,
   training and retained history.
 * Updated the WooCommerce preview: a separate add-on license works with any paid
   main plan.

#### 1.1.4

 * Added optional, explicit data deletion during uninstall, including Multisite-
   aware cleanup.
 * Added a complete repository disclosure, privacy guidance, screenshots metadata,
   and WordPress 7.1 compatibility metadata.
 * Added OpenAI Responses API `store: false` to minimize provider-side application-
   state retention.
 * Hardened network activation for Multisite and retained the safe Free-to-Pro handoff.

#### 1.1.3

 * Removed the floating widget’s white outline while retaining an accessible keyboard
   focus ring.
 * Replaced the raster launcher artwork with a crisp scalable SVG.
 * Refined the shortcode label typography and rebuilt the pricing-page presentation
   with a modern responsive layout.
 * Kept the Free-to-Pro handoff explicit and safe when Pro is activated.

#### 1.1.2

 * Moved the shortcode into a prominent setup card with WordPress and Elementor 
   instructions.
 * Added independent assistant-name, online-status, message, and launcher font-size
   controls.
 * Added a configurable floating-widget shadow color and true circular logo treatment.
 * Shows a masked API-key preview inside the saved credential field.
 * Modernized the Pro comparison and Freemius pricing screens.
 * Corrected Freemius boot timing, package basename registration, and admin menu
   icon sizing.

#### 1.1.1

 * Connected the public product identifiers and moved the SDK to vendor/freemius.
 * Preserved the separate, fully functional WordPress.org Free codebase with no 
   bundled Pro implementation.
 * Added the new default logo, corrected the color picker layout, and routed support
   to info@maplewebdesign.ca.
 * Removed em dash characters from first-party interface copy.

#### 1.1.0

 * Added Freemius-compatible Free/Premium handoff and automatic Free deactivation
   when Pro is active.
 * Updated the bundled Freemius WordPress SDK to 2.13.4.
 * Added automatic and expanded multilingual conversation choices while preserving
   Unicode and RTL/LTR behavior.
 * Added an in-plugin Help & Support workflow.
 * Updated the shared menu slug so Free and Pro no longer create duplicate dashboard
   entries.

#### 1.0.0

 * Initial WordPress.org-ready Free edition.
 * Added BYOK OpenAI chat, responsive floating/shortcode widget, RTL, manual training,
   and limited history.

## Meta

 *  Version **1.2.9**
 *  Last updated **2 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.1.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [AI Chatbot](https://wordpress.org/plugins/tags/ai-chatbot/)[customer support](https://wordpress.org/plugins/tags/customer-support/)
   [lead generation](https://wordpress.org/plugins/tags/lead-generation/)[local business](https://wordpress.org/plugins/tags/local-business/)
   [openai](https://wordpress.org/plugins/tags/openai/)
 *  [Advanced View](https://wordpress.org/plugins/mwd-ai-assistant-local-lead-generation/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/mwd-ai-assistant-local-lead-generation/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/mwd-ai-assistant-local-lead-generation/reviews/)

## Contributors

 *   [ arashkhalaj ](https://profiles.wordpress.org/arashkhalaj/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/mwd-ai-assistant-local-lead-generation/)