Skip to content

Staging

import { Badge, Aside } from ‘@astrojs/starlight/components’;

Staging tools let AI agents copy environments, test changes safely, and gate live pushes behind human approval.

Detects the hosting provider and lists available environments. Call this first — it returns the environment IDs needed by all other staging tools.

// No parameters required
{}

Returns: Provider name, environment list (id, name, type, url).


Copies live → staging. Safe — overwrites staging only, never touches production.

ParameterTypeRequiredDescription
sourcestringLive environment ID (from wp_get_staging_info)
destinationstringStaging environment ID
include_dbbooleanInclude database (default: true)
include_filesbooleanInclude media files (default: true)

On async hosts (Kinsta), returns operation_id — poll with wp_get_staging_status.


Requests a staging → live push. Does not push immediately. Creates a pending approval request and returns an approval_id. A human operator must approve and apply it.

ParameterTypeRequiredDescription
sourcestringStaging environment ID
destinationstringLive environment ID
include_dbbooleanInclude database (default: true)
include_filesbooleanInclude media (default: true)
reasonstringDescribe what changed and why it’s ready

Polls the status of an async push operation.

ParameterTypeRequiredDescription
operation_idstringID returned by a push endpoint

HostAPI typeNotes
WP EngineREST APIConfigure key in MCPWP → Integrations
KinstaREST APIAsync push — poll wp_get_staging_status
PressableREST APIConfigure key in MCPWP → Integrations
GenericWP-CLIFallback for other hosts
  1. Install MCPWP Pro
  2. Go to WP Admin → MCPWP → Integrations
  3. Add your hosting provider credentials (wpengine_staging, kinsta_staging, or pressable_staging)
  4. Ask an agent: "What staging environments do I have?"
Agent: wp_get_staging_info
→ Returns: env IDs for live + staging
Agent: wp_push_to_staging (live → staging)
→ Staging now mirrors live
[Make changes on staging]
Agent: wp_push_to_live (staging → live, reason: "Updated homepage hero copy")
→ Returns: approval_id