# Install AutoBlogging Pro — WordPress, WP-CLI, REST and MCP

> Five-step install, safe defaults, WP-CLI commands, REST endpoints and MCP integration through the WordPress Abilities API.

Source: https://autobloggingpro.com/en/install/  ·  Language: en  ·  Updated: 2026-09-10

# Install

Five steps. The fourth one is not optional.

## How do you install AutoBlogging Pro?

Download the zip file, upload it under Plugins then Add New, activate it, and paste your AI provider key into the settings screen. Activation schedules nothing and spends nothing: until you configure a topic list and a cadence, the plugin sits idle and costs you nothing.

## Requirements

| Component | Minimum | Note |
|---|---|---|
| WordPress | 5.8 | 6.9+ only for the MCP layer |
| PHP | 7.4 | 8.1 or newer recommended |
| AI API key | One | DeepSeek, Anthropic, or OpenAI-compatible |
| Stability AI | Optional | Only for featured images |

## Install

1. Download the archive[Download AutoBlogging Pro 3.1.0](../../download/autoblogging-pro.zip)
2. Upload it to WordPressPlugins → Add New → Upload Plugin → choose the ZIP → Install Now → Activate.On activation nothing is scheduled and nothing publishes itself. The plugin waits for you to configure it.

## Configure

1. Pick a provider and paste the keyAuto-Blogger → *AI provider*. Save, then click **Test connection** — the test reads the saved value, not what is on screen.
2. Check the safety settingsLeave “What happens to a finished article” on **Draft**. Set the daily cap to what you will [Why this matters](/en/risks/).
3. Generate a topic clusterEnter a specific seed, generate 50–100 topics, **read the list**, then save.
4. Generate one article and read all of itThis is the step not to skip. If it is not publishable under your own name, fix the prompt, the model or the topics — not the schedule.
5. Only then, set a scheduleOnce a day is already fast. “Every 5 minutes” exists for testing only.

## Running cron

WordPress cron only fires when somebody visits the site — exactly what a new site does not have. Three
options, best first:

1. **WP-CLI from your host's scheduler** (most reliable):
`0 9 * * * cd /path/to/wordpress && wp autoblog generate`
2. **The REST API**, with an application password.
3. **The external cron URL** shown in the settings, called by a cron service.
*It is a password*: whoever holds it can spend your credit.

## WP-CLI

```
wp autoblog status
wp autoblog topics generate "espresso at home" --count=60
wp autoblog topics list
wp autoblog generate --count=3
wp autoblog generate --topic="Choosing your first machine" --dry-run
wp autoblog queue
wp autoblog approve 412 413
wp autoblog approve --all-reviewed
wp autoblog schedule daily
wp autoblog set post_status draft
wp autoblog logs --lines=40
```

`--dry-run` calls the API and shows what would be written without saving anything. Useful for tuning
a prompt without filling the trash.

## REST API

Namespace `autoblogging-pro/v1`. Every route requires authentication and the
`manage_options` capability; application passwords work.

| Method | Route | Purpose |
|---|---|---|
| GET | `/status` | Provider, publishing mode, schedule, usage |
| GET / POST | `/settings` | Read or change settings (keys are never returned) |
| POST | `/generate` | Write an article — optional `{"topic":"…"}` |
| GET / POST | `/topics` | Read, add, or generate from a seed |
| GET | `/queue` | Drafts waiting for review |
| POST | `/approve/<id>` | Mark reviewed and publish |
| GET | `/logs` | The debug log |

```
curl -u "user:xxxx xxxx xxxx xxxx" \
  -X POST https://example.com/wp-json/autoblogging-pro/v1/generate \
  -H "Content-Type: application/json" \
  -d '{"topic": "How to descale an espresso machine"}'
```

## MCP and the Abilities API

WordPress 6.9 introduced the **Abilities API**, and the official WordPress MCP Adapter exposes
registered abilities as MCP tools. The plugin registers five on
`wp_abilities_api_init`:

| Ability | What it does | Spends money? |
|---|---|---|
| `autoblogging-pro/get-status` | Configuration, schedule, usage | No |
| `autoblogging-pro/list-review-queue` | Drafts awaiting review | No |
| `autoblogging-pro/generate-draft` | Write an article | **Yes** |
| `autoblogging-pro/generate-topics` | Expand a seed into a cluster | **Yes** |
| `autoblogging-pro/approve-draft` | Publish a reviewed draft | No |

All require `manage_options`, and the two paid abilities respect the spend ceilings. On WordPress
older than 6.9 the registration is simply skipped — the rest of the plugin works normally.

With the MCP Adapter installed, an assistant can ask for the review queue, draft an article on a specific topic, then publish *after* you have read it. The publishing ability is deliberately separate from the writing one, so the human stays in the loop.

## Upgrading from 2.x

The plugin folder and settings keys are unchanged: 3.0 installs over 2.x and keeps existing settings.

2.x published everything directly. On upgrade your site **keeps that behaviour** — we do not silently change what an already-configured site does. A warning appears in the log. Switch “What happens to a finished article” to **Draft** yourself.

The old DeepSeek key stored in `api_key` is carried across automatically.

## Troubleshooting

### “No provider configured”

The key is not saved, or it is saved for a different provider than the one selected. Each provider has its own key field. Save, then test.

### The model does not return usable JSON

3.0 automatically repairs code fences, surrounding prose, trailing commas and unescaped newlines. If it still fails, your custom prompt has probably stopped asking for a JSON object with at least `title` and `content`. Start again from the default prompt.

### Nothing generates automatically

WordPress cron needs traffic. Check “Next scheduled run” on the dashboard. On a site with no visitors, use WP-CLI or a real cron job — see above.

### Generation stops on a cap

That is the intended behaviour: the cap blocks *before* any paid call. Adjust it under Settings → Safety if that was deliberate.

### Duplicate meta descriptions

Should not happen: the plugin detects Rank Math, Yoast, SEOPress, AIOSEO and Slim SEO and stays quiet. If you use another SEO plugin, turn off its description handling or tell us which one.

### Images do not attach

Check the Stability key with the Test button, and check that `wp-content/uploads` is writable. The log states the exact cause.

[Best practices →](/en/guide/)
[SEO risks](/en/risks/)

Updated 2026-09-10
