> For the complete documentation index, see [llms.txt](https://docs.3techagency.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.3techagency.com/documentation/reference-and-help/external-mcp.md).

# External MCP connections

Let Claude Desktop, Cursor and other MCP clients drive the site with OAuth or an Application Password.

WP AI Manager can expose its tools to outside AI clients over the Model Context Protocol (MCP). This is **optional** and **off by default**. The in-admin AI Chat does not use it.

{% hint style="danger" %}
A connected client can create, edit and delete content on this site. Use a capable model, set the client to ask before every action, and disconnect clients you no longer use.
{% endhint %}

## Enable and connect

{% stepper %}
{% step %}

### Turn it on

Check the site is on HTTPS and the WordPress REST API works. Enable **Settings > Advanced > External MCP surface**.
{% endstep %}

{% step %}

### Check Server Status

Open **Settings > External MCP**. **Server Status** shows the MCP Adapter, server, and **Tools Enabled** count. **Server URL** is auto-detected; override it only if the site is served on a different address.
{% endstep %}

{% step %}

### Choose authentication

**OAuth** (recommended): the client opens a browser page where an administrator approves access. Needs HTTPS and **OAuth sign-in for AI clients** turned on.

**Application password**: pick an administrator and select **Generate Password & Configs**. The password is shown once and every client config is filled in. You can paste an existing Application Password instead.
{% endstep %}

{% step %}

### Configure your client

Under **Connect Your AI Client**, pick your client for tailored steps and copy its config. Prefer these generated templates over old copied JSON.
{% endstep %}

{% step %}

### Test

Select **Test full MCP connection**. Then, from the client, test initialize, list tools and make a read-only call before any write.
{% endstep %}
{% endstepper %}

## Manage connected apps

**Connected apps** lists every client that registered, with status (Connected, Signed out, Never signed in) and who it is connected as.

* **Sign out** ends its session but lets it sign in again.
* **Remove** deletes its registration; it must register again next time.

Revoke Application Passwords under **Users > Profile**. Never put a password in public docs, a repository or a screenshot.

## Options

* **OpenAI-strict tool schemas**: enable only for strict function-calling clients such as CrewAI. Leave it off for Claude, Gemini and Antigravity.
* **Compact tool mode** lives on **Integrations > Advanced tools**, next to the per-tool toggles.

## Security boundary

External calls go through the same WordPress permissions, per-tool toggles, Advanced-tools gate, protected pages and requirement checks as Chat. A missing integration returns an actionable requirement. Use a dedicated administrator account for clients where possible.

## If the handshake fails

| Symptom                                       | Likely cause and fix                                                                                                                                                                                               |
| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 401 on initialize                             | Apache, Plesk, LiteSpeed, a CDN or an IIS/Azure proxy stripped the Authorization header. Pass it through to PHP (the screen shows the `.htaccess` lines) and re-test.                                              |
| Client says it couldn't reach OAuth discovery | A CDN or WAF blocks the discovery paths. Use **Test public OAuth discovery**, allow-list the listed paths (in Cloudflare, a WAF skip or Configuration Rule), then reconnect. Or switch to an Application Password. |
| 404 or rewritten route                        | Permalinks, REST or server routing. Check the MCP endpoint is reachable.                                                                                                                                           |
| OAuth unavailable                             | The site is not on HTTPS. Use an Application Password.                                                                                                                                                             |
| Old behaviour after an update                 | Restart long-lived WP-CLI stdio clients so they load new code.                                                                                                                                                     |

**Settings > MCP log** shows recent requests. For everyday site work, use [AI Chat](/documentation/workflows/ai-chat.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.3techagency.com/documentation/reference-and-help/external-mcp.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
