Manage multisite websites from the main-site connection
Network super administrators can use one main-site MCP connection to manage supported content, media, taxonomy terms, menus, POM Theme settings, content models, templates, forms and faceted search on sites in the same WordPress network. WooCommerce catalog and POM Cache operations are available when their integrations are installed. The main site needs a current POM AI Unlimited license, monthly or annual.
Activate POM AI on each destination individually or across the network. A delegated destination needs no local license, API key, OAuth connection or enabled MCP setting. WordPress 6.9+ is required; POM AI includes the official MCP Adapter.
Set up the connection
- Activate POM AI on the main site and each destination.
- Connect the main site's Unlimited license under Settings → POM AI → License.
- Enable POM AI MCP under Settings → POM AI → AI Tools, then Enable OAuth under Settings → POM AI → MCP server.
- Use pretty permalinks and HTTPS on the main site. Ensure WordPress scheduled events run for every destination with that site's theme and plugins loaded. Destinations may use plain permalinks.
- As a super administrator, open Network Admin → Settings → POM AI Network MCP. Select Enable network delegation and the necessary write groups, then save.
- Authorize the client against the main site's MCP URL. Network reads require
mcp:readandnetwork:sites:read; network writes also requiremcp:writeandnetwork:sites:write. Each destination tool additionally requires its own scopes shown by discovery, such aswp:content:writeorpom_theme:write.
Existing grants do not acquire new scopes automatically. Reauthorize for missing scopes. Consent covers eligible current and future sites in this network; the actor must remain a super administrator.
Choose write groups
| Network option | Grants |
|---|---|
| Allow delegated page writes | The revisioned page-save operation only |
| Allow all supported content, forms, media and taxonomy writes | Supported content types, forms, term names/slugs/images/order, media, menus and content metadata |
| Allow POM Theme settings, content models, templates and search configuration | Supported theme configuration, CPT/taxonomy definitions, templates, saved queries and facet contexts |
| Allow supported WordPress site settings | Permitted WordPress options and front/posts/privacy page assignments |
| Allow WooCommerce catalog and coupon writes | Supported commerce operations |
| Allow site cache maintenance | POM Cache clearing |
An existing page-write permission remains page-only. Broader groups start disabled. Some operations need more than one group, such as assigning existing theme scripts to content. Every site write also needs your approval.
Work on a destination
Submission and pom_get_task return immediately. The operation itself runs in the destination's WordPress cron; it does not require an HTTP request between sites. Wait the returned poll_after_seconds and poll the same task on the main-site connection while terminal is false. Its phase distinguishes waiting for dispatch, waiting for the destination's cron and executing. Use a completed task's result for each step below; stop and inspect errors for failed, expired or uncertain.
A delegated destination loads its tool catalog when its worker claims an operation. Network delegation does not enable that destination's independent MCP endpoint or require local OAuth setup. An independently enabled site MCP remains available through its own configuration.
Each destination can have its next operation scheduled independently, so a site waiting for cron does not prevent another site from starting. POM AI still executes only one heavy operation at a time across the installation. Keep the destination's scheduled-event runner enabled and respect the polling delay.
Collect and save each result promptly. Results are available for up to one hour after completion; the oldest finished task receipts can be removed sooner when new work needs capacity. If a receipt is missing, inspect the destination before repeating a write. Network execution audit entries appear in the main site's MCP log and identify the destination blog ID.
- Call
pom_network_get_context, thenpom_network_list_sites. Follownext_offsetwhen present. - Select the requested
blog_idand callpom_network_discover_site. Read itssite, tools, schemas, required scopes and write groups. - Call
pom_network_read_sitewith the selectedblog_id, discovered toolnameand itsarguments. Include the destination'ssite_idUUID insidearguments. - Preview a discovered write with
pom_network_execute_siteandarguments.dry_run: true. - Submit the exact intended write, including
expected_revisionwhere required. For several known operations, routepom_site_prepare_write_jobto this destination for one combined approval. Review in the client confirmation dialog or through the returned main-site link, which clearly identifies the destination. You do not need to sign in to the destination. - Execute each original operation with the returned
approval_idinsidearguments. Read job status withpom_site_get_write_jobthroughpom_network_read_site. - Inspect the result, then read back the target and verify its editor or frontend. After creating a CPT, taxonomy or query, or activating a theme feature, make a fresh request and rediscover dependent contracts.
blog_id selects the site; site_id verifies its identity. Post, term and media IDs belong to that destination. Use the returned schemas rather than copying another site's catalog. A tool being listed does not mean its scope or write group is enabled.
For iterative work, route pom_site_request_work_session to the destination and explicitly authorize its selected groups on the main site. Sessions last one, four or eight hours from approval and permit up to 500 separately identified operations. Use work_session_id and a new operation_id for each permitted write, then inspect pom_site_get_work_session. Deletion tools and composite plans still need an exact review. Revoke the session from its main-site review link. See Authorize a network work session.
Common tasks
| Task | Destination tools |
|---|---|
| Read and edit pages, posts and public CPT items | wp_get_posts, pom_site_get_content, pom_site_save_content |
| Inspect any manageable taxonomy | wp_get_taxonomies, wp_get_terms, wp_get_term |
| Change term fields or images | wp_create_term, wp_update_term, wp_delete_term |
| Rename terms without changing slugs | wp_rename_terms |
| Set term positions in a batch | wp_reorder_terms |
| Create CPTs, taxonomies and custom fields | pom_theme_configure_content_model |
| Discover and patch theme settings | pom_theme_get_settings_catalog, pom_theme_get_setting_contract, pom_theme_patch_settings |
| Configure listing queries and facet contexts | pom_site_get_listing_catalog, pom_site_save_query, pom_site_save_facets, pom_site_reindex_facets |
The network routes the reviewed site-tool catalog. It does not execute arbitrary WordPress abilities or route another network/account gateway recursively. User administration, credentials, executable-code creation and permission-rule editing remain outside the authoring catalog. Resources and prompts are available on direct connections; use the routed discovery and authoring tools for network work.
Verify and recover
Routed responses contain blog_id, isError and result. Inspect the inner error and any complete, approval_required or plan status fields. A wrapper-level dry_run: true forces a destination preview.
If a response cannot be confirmed, inspect the destination before retrying: the operation may have completed. If revisions or approvals are stale, read and preview again. No operation automatically rolls back a whole website.
Clear an area's write option to refuse its writes and previews. Clear Enable network delegation to stop routing. Revoke the main-site OAuth grant to stop that client. None of these actions undoes completed changes.
Independent subsite connections still require that subsite's own valid, domain-authorized license and its own authentication, scopes and permissions. They never inherit the network grant. Delegated authoring does not enable account-backed AI services for subsite users.
For unavailable destinations, check activation, site status, selected network, the destination URL and its scheduled-event runner. For entitlement refusals, check the main-site license and domain authorization. Temporary verification failures refuse delegation without interrupting the website.