{"id":355169,"date":"2026-08-19T12:43:44","date_gmt":"2026-08-19T12:43:44","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/ai-content-assistant-for-claude\/"},"modified":"2026-08-19T15:51:59","modified_gmt":"2026-08-19T15:51:59","slug":"draftsmith-ai-content-assistant","status":"publish","type":"plugin","link":"https:\/\/fa.wordpress.org\/plugins\/draftsmith-ai-content-assistant\/","author":18587966,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.3.1","stable_tag":"1.3.1","tested":"7.0.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Draftsmith AI Content Assistant","header_author":"Tok DI","header_description":"Generate and improve WordPress content with Claude or DeepSeek: draft posts, suggest titles, rewrite text, and write SEO descriptions and tags from the editor. Includes an optional MCP connector.","assets_banners_color":"231b16","last_updated":"2026-08-19 15:51:59","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.paypal.com\/donate?hosted_button_id=2WXJPFWJZ8382","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":55,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.1":{"tag":"1.3.1","author":"youssefibrahim","date":"2026-08-19 15:51:59"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3654605,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3654605,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3654605,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3654605,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.3.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3654956,"resolution":"1","location":"assets","locale":"","width":1011,"height":768},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3654956,"resolution":"2","location":"assets","locale":"","width":1025,"height":869},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3654956,"resolution":"3","location":"assets","locale":"","width":1034,"height":809},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3654956,"resolution":"4","location":"assets","locale":"","width":1085,"height":817},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3654956,"resolution":"5","location":"assets","locale":"","width":1009,"height":702}},"screenshots":{"1":"The Draftsmith dashboard: turn a single idea into a full post, an outline, or an intro, then create a draft with one click.","2":"The in-editor assistant: suggest titles, rewrite or expand text, write an SEO description, and propose tags without leaving the editor.","3":"The chat panel inside the editor, for asking questions about the post you are working on.","4":"Settings: pick a Claude or DeepSeek model, and set the writing tone, language, and output length.","5":"The MCP Connection screen: enable the connector, review the tool catalogue, and revoke connected apps at any time."}},"plugin_section":[],"plugin_tags":[2353,210511,229563,13175,237722],"plugin_category":[55],"plugin_contributors":[276503],"plugin_business_model":[],"class_list":["post-355169","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-ai-writer","plugin_tags-claude","plugin_tags-content-generator","plugin_tags-deepseek","plugin_category-seo-and-marketing","plugin_contributors-youssefibrahim","plugin_committers-youssefibrahim"],"banners":{"banner":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/banner-772x250.png?rev=3654605","banner_2x":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/banner-1544x500.png?rev=3654605","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/icon-128x128.png?rev=3654605","icon_2x":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/icon-256x256.png?rev=3654605","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/screenshot-1.png?rev=3654956","caption":"The Draftsmith dashboard: turn a single idea into a full post, an outline, or an intro, then create a draft with one click."},{"src":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/screenshot-2.png?rev=3654956","caption":"The in-editor assistant: suggest titles, rewrite or expand text, write an SEO description, and propose tags without leaving the editor."},{"src":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/screenshot-3.png?rev=3654956","caption":"The chat panel inside the editor, for asking questions about the post you are working on."},{"src":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/screenshot-4.png?rev=3654956","caption":"Settings: pick a Claude or DeepSeek model, and set the writing tone, language, and output length."},{"src":"https:\/\/ps.w.org\/draftsmith-ai-content-assistant\/assets\/screenshot-5.png?rev=3654956","caption":"The MCP Connection screen: enable the connector, review the tool catalogue, and revoke connected apps at any time."}],"raw_content":"<!--section=description-->\n<p><strong>Draftsmith AI Content Assistant<\/strong> connects your WordPress site to Anthropic's Claude models (and, optionally, DeepSeek) and adds a Content Management Panel that lets you:<\/p>\n\n<ul>\n<li><strong>Central dashboard<\/strong>: generate full posts, outlines, or intros from a single idea, and turn them into a draft post with one click.<\/li>\n<li><strong>In-editor assistant<\/strong>: a sidebar toolbox in the post editor (works with both the block editor and the Classic Editor) that includes:\n\n<ul>\n<li>Suggesting 5 compelling titles based on the post's content.<\/li>\n<li>Improving text: rewrite, expand, summarize, spelling &amp; grammar fixes.<\/li>\n<li>Generating and saving an SEO meta description.<\/li>\n<li>Suggesting tags and adding them to the post in one click.<\/li>\n<li>A chat panel for asking questions about the post you are editing.<\/li>\n<\/ul><\/li>\n<li><strong>MCP connector<\/strong> (optional): let Claude.ai connect to your site through an OAuth 2.1 + PKCE flow so it can manage content, media, and SEO from a conversation \u2014 with separate write and delete permission switches and one-click revocation.<\/li>\n<li><strong>Flexible settings<\/strong>: choose the provider and model, writing tone, default language, and output length.<\/li>\n<li><strong>Security-first<\/strong>: your API keys are stored only in your own site's database, with capability checks and nonces on every request.<\/li>\n<\/ul>\n\n<h4>Supported models<\/h4>\n\n<p><strong>Claude (Anthropic)<\/strong>: Claude Sonnet 5 (default), Claude Opus 5, Claude Haiku 4.5, Claude Opus 4.8, and Claude Sonnet 4.6.<\/p>\n\n<p><strong>DeepSeek<\/strong> (optional, requires its own API key): DeepSeek V4 Flash and DeepSeek V4 Pro.<\/p>\n\n<h4>What the MCP connector exposes<\/h4>\n\n<p>When enabled, a connected app can use 22 tools grouped into Content, Discovery &amp; planning, Media library, and SEO (Rank Math). The full list, with a read\/write\/delete badge for each, is shown on the <strong>Draftsmith \u2192 MCP Connection<\/strong> screen. Write tools require the \"allow write\" setting; delete tools require the \"allow delete\" setting, which is off by default. Every action runs with the capabilities of the WordPress user who approved the connection.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin relies on external services. Nothing is sent anywhere until you explicitly configure and use the corresponding feature.<\/p>\n\n<h4>1. Anthropic Claude API (required for content generation)<\/h4>\n\n<p>The plugin sends requests to the Anthropic Messages API at <code>https:\/\/api.anthropic.com\/v1\/messages<\/code> in order to generate and improve content.<\/p>\n\n<ul>\n<li><strong>When<\/strong>: only when you click a generation action (dashboard \"Generate content\", any button in the editor assistant, the chat panel, or \"Test connection\"). No request is made on page load or on a schedule.<\/li>\n<li><strong>What is sent<\/strong>: the API key you entered, the selected model name, your prompt, and the post title\/content excerpt relevant to the action you triggered. No visitor data and no site credentials are sent.<\/li>\n<li><strong>Provider<\/strong>: Anthropic, PBC.<\/li>\n<li>Terms of service: https:\/\/www.anthropic.com\/legal\/consumer-terms<\/li>\n<li>Privacy policy: https:\/\/www.anthropic.com\/legal\/privacy<\/li>\n<\/ul>\n\n<p>An Anthropic account and API key from https:\/\/console.anthropic.com are required for this feature. Usage is billed by Anthropic according to their pricing.<\/p>\n\n<h4>2. DeepSeek API (optional, only used if you select a DeepSeek model)<\/h4>\n\n<p>If you enter a DeepSeek API key and select a DeepSeek model, the plugin sends requests to the DeepSeek API at <code>https:\/\/api.deepseek.com\/chat\/completions<\/code> in order to generate and improve content.<\/p>\n\n<ul>\n<li><strong>When<\/strong>: only when you click a generation action while a DeepSeek model is selected (dashboard \"Generate content\", any button in the editor assistant, the chat panel, or \"Test connection\"). No request is made on page load or on a schedule, and nothing is sent to DeepSeek while a Claude model is selected.<\/li>\n<li><strong>What is sent<\/strong>: the DeepSeek API key you entered, the selected model name, your prompt, and the post title\/content excerpt relevant to the action you triggered. No visitor data and no site credentials are sent.<\/li>\n<li><strong>Provider<\/strong>: DeepSeek (Hangzhou DeepSeek Artificial Intelligence Co., Ltd.).<\/li>\n<li>Terms of service: https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-open-platform-terms-of-service.html<\/li>\n<li>Privacy policy: https:\/\/cdn.deepseek.com\/policies\/en-US\/deepseek-privacy-policy.html<\/li>\n<\/ul>\n\n<p>A DeepSeek account and API key from https:\/\/platform.deepseek.com are required for this feature. Usage is billed by DeepSeek according to their pricing. This is entirely optional \u2014 the plugin works with a Claude-only setup with nothing DeepSeek-related ever contacted.<\/p>\n\n<h4>3. Claude.ai MCP connector (optional, disabled by default)<\/h4>\n\n<p>If you enable the MCP server on the <strong>MCP Connection<\/strong> screen and approve a connection, an external client \u2014 normally Claude.ai \u2014 connects <strong>inbound<\/strong> to your site. Your site does not send data out on its own for this feature; the remote client requests it.<\/p>\n\n<ul>\n<li><strong>When<\/strong>: only after you enable the MCP server and complete the OAuth consent screen for a specific client.<\/li>\n<li><strong>What the client can read\/write<\/strong>: the content covered by the 22 tools listed on the MCP Connection screen, limited by your write\/delete settings and by the capabilities of the approving user.<\/li>\n<li><strong>Provider (typical client)<\/strong>: Anthropic, PBC \u2014 https:\/\/claude.ai<\/li>\n<li>Terms of service: https:\/\/www.anthropic.com\/legal\/consumer-terms<\/li>\n<li>Privacy policy: https:\/\/www.anthropic.com\/legal\/privacy<\/li>\n<\/ul>\n\n<p>You can revoke any connected app at any time from the MCP Connection screen. Disabling the MCP server blocks all inbound access immediately.<\/p>\n\n<h3>Trademarks<\/h3>\n\n<p>Claude and Anthropic are trademarks of Anthropic, PBC. DeepSeek is a trademark of Hangzhou DeepSeek Artificial Intelligence Co., Ltd. This plugin is an independent integration and is not affiliated with, sponsored by, or endorsed by either company.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>draftsmith-ai-content-assistant<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin from the WordPress \"Plugins\" page.<\/li>\n<li>Go to <strong>Draftsmith \u2192 Settings<\/strong> and enter your Claude API key (from console.anthropic.com).<\/li>\n<li>Click \"Test connection\" to confirm it's working.<\/li>\n<li>Start generating from the <strong>Dashboard<\/strong>, or open any post and use the \"Claude Content Assistant\" box in the sidebar.<\/li>\n<li>(Optional) To let Claude.ai manage your site directly, go to <strong>Draftsmith \u2192 MCP Connection<\/strong>, enable the MCP server, and follow the on-screen steps.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20are%20my%20api%20keys%20stored%3F\"><h3>Where are my API keys stored?<\/h3><\/dt>\n<dd><p>In your site's own options table (<code>wp_options<\/code>). Each key is sent only to its own provider (Claude or DeepSeek) when you trigger a generation action while a model from that provider is selected, and to no other party.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20work%20with%20the%20block%20editor%20%28gutenberg%29%3F\"><h3>Does the plugin work with the block editor (Gutenberg)?<\/h3><\/dt>\n<dd><p>Yes, and it also works with the Classic Editor.<\/p><\/dd>\n<dt id=\"do%20i%20need%20an%20anthropic%20account%3F\"><h3>Do I need an Anthropic account?<\/h3><\/dt>\n<dd><p>Yes, if you want to use a Claude model \u2014 content generation with a Claude model requires a valid API key from https:\/\/console.anthropic.com with available usage credit. DeepSeek is a separate, optional provider with its own API key from https:\/\/platform.deepseek.com; you only need one of the two to use the plugin.<\/p><\/dd>\n<dt id=\"does%20the%20mcp%20connector%20require%20https%3F\"><h3>Does the MCP connector require HTTPS?<\/h3><\/dt>\n<dd><p>Yes. OAuth and MCP require HTTPS in production. The MCP Connection screen warns you if your site is not served over HTTPS.<\/p><\/dd>\n<dt id=\"is%20the%20mcp%20connector%20enabled%20by%20default%3F\"><h3>Is the MCP connector enabled by default?<\/h3><\/dt>\n<dd><p>No. It is off until you enable it, and delete permissions stay off even after you enable it unless you turn them on explicitly.<\/p><\/dd>\n<dt id=\"is%20rank%20math%20required%3F\"><h3>Is Rank Math required?<\/h3><\/dt>\n<dd><p>No. The SEO tools degrade gracefully when Rank Math is not installed; the redirect tools require Rank Math's redirection module.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Fixed: <code>$_SERVER['REQUEST_URI']<\/code> is now sanitized before use in the OAuth discovery routes.<\/li>\n<li>Fixed: the tags AJAX handler sanitizes its input inline, and the chat handler unslashes the replayed history before sanitizing each entry.<\/li>\n<li>Changed: every remaining PHPCS suppression now names the specific sniff and states why, instead of silencing a whole line.<\/li>\n<li>Changed: template variables are prefixed so they cannot collide when a view file is included.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Renamed the plugin to \"Draftsmith AI Content Assistant\" and moved to the <code>draftsmith-ai-content-assistant<\/code> slug and text domain.<\/li>\n<li>Changed: every declaration, option, AJAX action, nonce, REST namespace and database table now uses the longer, distinct <code>draftsmith<\/code> prefix.<\/li>\n<li>Changed: the admin header mark is now an inline SVG instead of a bitmap, removing 324KB from the plugin.<\/li>\n<li>Fixed: character-encoding damage in readme.txt that turned dashes and arrows into mojibake.<\/li>\n<li>Fixed: inline <code>&lt;style&gt;<\/code> and <code>&lt;link&gt;<\/code> output replaced with <code>wp_add_inline_style()<\/code> and <code>wp_enqueue_style()<\/code>\/<code>wp_print_styles()<\/code>.<\/li>\n<li>Fixed: the OAuth consent nonce is now sanitized before verification.<\/li>\n<li>Removed: the <code>load_plugin_textdomain()<\/code> call, unnecessary since WordPress 4.6.<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Fixed: DeepSeek requests returned \"No content was received\" for every action, including Test Connection. DeepSeek's V4 models default to an extended-reasoning (\"thinking\") mode that draws from the same token budget as the visible answer, so short budgets (Test Connection used 16 tokens) were entirely consumed by reasoning before anything was written to the response. Thinking mode is now explicitly disabled on every DeepSeek request, matching how this plugin already generates content with Claude.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Added: DeepSeek as a second, optional AI provider for content generation (DeepSeek V4 Flash and DeepSeek V4 Pro), with its own API key field on the Settings screen. Claude remains the default; nothing is sent to DeepSeek unless you configure a key and select a DeepSeek model.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Changed: the donation prompt appeared twice on every screen (a header button and a sidebar card). It is now a single card on the Dashboard only, plus a standard \"Donate\" link on the Plugins page row.<\/li>\n<li>Fixed: the admin menu icon sizing rule still referenced the old menu slug after the rename.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Fixed: the donation dialog opened by itself on page load and could not be closed. Its stylesheet rule used <code>display: flex !important<\/code>, which overrode both the inline <code>display:none<\/code> and jQuery's fadeOut. Visibility is now driven by a dedicated class.<\/li>\n<li>Fixed: the \"Add selected to post tags\" button in the editor was permanently visible because <code>!important<\/code> display rules overrode the <code>hidden<\/code> attribute.<\/li>\n<li>Added: the donation dialog now closes on Escape, on backdrop click, and after choosing a donation option.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Renamed to \"Draftsmith AI Content Assistant\" and moved to the <code>draftsmith-ai-content-assistant<\/code> text domain and slug.<\/li>\n<li>Fixed: the model list contained retired model IDs, which made every request fail. Replaced with the current Claude models, and installs holding an old model ID now fall back to a supported one automatically.<\/li>\n<li>Fixed: <code>temperature<\/code> was sent to models that reject it, causing HTTP 400 errors. It is now only sent to models that accept it.<\/li>\n<li>Added: a full MCP tool catalogue on the MCP Connection screen, with read\/write\/delete badges reflecting your current permission settings.<\/li>\n<li>Changed: admin assets are now scoped by admin page hook instead of reading the query string.<\/li>\n<li>Changed: the donation UI is hidden unless real donation links are configured.<\/li>\n<li>Fixed: the dashboard stat row no longer leaves a single orphaned card at intermediate screen widths.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release: dashboard, in-editor assistant, settings, title\/content\/SEO\/tag generation, MCP connector with OAuth 2.1, media tools, and Rank Math SEO integration.<\/li>\n<\/ul>","raw_excerpt":"AI content generator for WordPress: write posts, titles, SEO descriptions and tags with Claude or DeepSeek, plus an optional MCP connector.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/355169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=355169"}],"author":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/youssefibrahim"}],"wp:attachment":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=355169"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=355169"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=355169"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=355169"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=355169"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=355169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}