🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

site-pilot-ai

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

site-pilot-ai

MCP Server for WordPress - Manage posts, pages, SEO, forms & Elementor from Claude Desktop, Cursor, Windsurf and any MCP client

latest
Source
npmnpm
Version
2.1.0
Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

Site Pilot AI

npm version License: MIT

MCP Server for WordPress - Manage posts, pages, SEO, forms & Elementor from Claude Desktop, Cursor, Windsurf and any MCP client.

Control your WordPress sites with AI through the Model Context Protocol. Built on a microkernel architecture with pluggable extensions.

Quick Start

1. Run Setup Wizard

npx -y site-pilot-ai --setup

This will:

  • Prompt for your WordPress URL and API key
  • Test the connection
  • Save configuration to ~/.wp-ai-operator/config.json
  • Show Claude Desktop config

2. Install WordPress Plugin

Install the Site Pilot AI plugin on your WordPress site:

  • Download from GitHub releases
  • Upload to WordPress: WP Admin > Plugins > Add New > Upload Plugin
  • Activate and copy your API key from Site Pilot AI (top-level admin menu)

3. Configure Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "wordpress": {
      "command": "npx",
      "args": ["-y", "site-pilot-ai"],
      "env": {
        "WP_URL": "https://your-site.com",
        "WP_API_KEY": "your-api-key"
      }
    }
  }
}

4. Restart Claude Desktop

Tools will appear automatically. Try: "Show me my site info"

Features

30 tools across 4 extensions:

Core (14 tools)

  • wp_site_info - Site information (theme, plugins, stats)
  • wp_analytics - API activity logs
  • wp_detect_plugins - Detect installed plugins
  • wp_list_posts / wp_create_post / wp_update_post / wp_delete_post - Post management
  • wp_list_pages / wp_create_page / wp_update_page - Page management
  • wp_upload_media / wp_upload_media_from_url - Media library
  • wp_list_drafts / wp_delete_all_drafts - Draft cleanup

SEO (5 tools)

Works with Yoast SEO, RankMath, All-in-One SEO, SEOPress:

  • wp_get_seo / wp_set_seo - SEO metadata (title, description, Open Graph)
  • wp_analyze_seo - SEO quality analysis with suggestions
  • wp_bulk_seo - Batch SEO updates
  • wp_get_seo_plugin - Detect active SEO plugin

Forms (8 tools)

Works with Contact Form 7, WPForms, Gravity Forms, Elementor Forms, Ninja Forms:

  • wp_list_forms / wp_get_form - Browse forms
  • wp_create_form / wp_update_form / wp_delete_form - Form builder
  • wp_get_form_submissions - View submissions
  • wp_submit_form - Programmatic submissions
  • wp_get_form_plugin - Detect active form plugin

Elementor (9 tools)

Full page builder control:

  • wp_get_elementor / wp_set_elementor - Page data (sections, widgets)
  • wp_list_elementor_templates / wp_apply_elementor_template - Template system
  • wp_create_landing_page - Complete landing pages (hero, features, CTA)
  • wp_add_elementor_section - Add sections to pages
  • wp_update_elementor_widget - Modify widgets
  • wp_get_elementor_globals - Global colors/typography
  • wp_clone_elementor_page - Duplicate pages

Configuration

Environment Variables

WP_URL=https://your-site.com
WP_API_KEY=your-api-key
WP_SITE_NAME=default  # Optional, for multi-site configs

Config File Format

Location: ~/.wp-ai-operator/config.json

{
  "sites": {
    "default": {
      "url": "https://your-site.com",
      "apiKey": "your-api-key",
      "name": "My Site"
    },
    "staging": {
      "url": "https://staging.your-site.com",
      "apiKey": "staging-key",
      "name": "Staging"
    }
  },
  "defaultSite": "default",
  "enabledExtensions": ["core", "seo", "forms", "elementor"]
}

Multi-Site Management

Use the site parameter in tool calls:

{
  "tool": "wp_create_post",
  "arguments": {
    "site": "staging",
    "title": "Test Post",
    "content": "<p>Hello world</p>"
  }
}

Or set WP_SITE_NAME environment variable.

CLI Commands

# Start MCP server (stdio transport)
site-pilot-ai

# Run interactive setup wizard
site-pilot-ai --setup

# Test WordPress connection
site-pilot-ai --test

# Show version
site-pilot-ai --version

# Show help
site-pilot-ai --help

Tool Reference

ToolExtensionPurposeKey Parameters
Site Management
wp_site_infoCoreSite info (theme, plugins, stats)site?
wp_analyticsCoreAPI activity logsdays?, site?
wp_detect_pluginsCoreDetect installed pluginssite?
Posts
wp_list_postsCoreList postsper_page?, status?, site?
wp_create_postCoreCreate posttitle, content, status?, categories?, tags?, site?
wp_update_postCoreUpdate postid, title?, content?, status?, site?
wp_delete_postCoreDelete postid, force?, site?
Pages
wp_list_pagesCoreList pagesper_page?, status?, site?
wp_create_pageCoreCreate pagetitle, content?, status?, template?, site?
wp_update_pageCoreUpdate pageid, title?, content?, status?, site?
Media
wp_upload_mediaCoreUpload filefile_path, site?
wp_upload_media_from_urlCoreUpload from URLurl, filename, site?
Drafts
wp_list_draftsCoreList draftssite?
wp_delete_all_draftsCoreBulk delete draftssite?
SEO
wp_get_seoSEOGet SEO metadatapost_id, site?
wp_set_seoSEOSet SEO metadatapost_id, title?, description?, focus_keyword?, og_*, site?
wp_analyze_seoSEOAnalyze SEO qualitypost_id, keyword?, site?
wp_bulk_seoSEOBatch SEO updatesupdates[], site?
wp_get_seo_pluginSEODetect SEO pluginsite?
Forms
wp_list_formsFormsList all formsplugin?, site?
wp_get_formFormsGet form detailsform_id, plugin?, site?
wp_create_formFormsCreate formtitle, plugin, fields[], settings?, site?
wp_update_formFormsUpdate formform_id, plugin, fields?, settings?, site?
wp_delete_formFormsDelete formform_id, plugin, site?
wp_get_form_submissionsFormsView submissionsform_id, plugin?, limit?, site?
wp_submit_formFormsSubmit form dataform_id, plugin, data, site?
wp_get_form_pluginFormsDetect form pluginsite?
Elementor
wp_get_elementorElementorGet page datapage_id, site?
wp_set_elementorElementorSet page datapage_id, elementor_data, site?
wp_list_elementor_templatesElementorList templatestype?, site?
wp_apply_elementor_templateElementorApply templatepage_id, template_id, mode?, site?
wp_create_landing_pageElementorCreate landing pagetitle, headline, cta_text, cta_url, features?, testimonials?, colors?, site?
wp_add_elementor_sectionElementorAdd sectionpage_id, position?, section_data, site?
wp_update_elementor_widgetElementorUpdate widgetpage_id, widget_id, settings, site?
wp_get_elementor_globalsElementorGet global stylessite?
wp_clone_elementor_pageElementorClone pagepage_id, new_title, site?

Troubleshooting

Connection Failed

# Test connection
site-pilot-ai --test

# Verify:
# 1. WordPress site is accessible
# 2. Site Pilot AI plugin is active
# 3. API key is correct
# 4. Firewall allows REST API access

Invalid API Key

  • Check WP Admin > Site Pilot AI
  • Regenerate key if needed
  • Update config: site-pilot-ai --setup

Plugin Requirements

Required:

  • Site Pilot AI plugin (included with package)

Optional (for extensions):

  • SEO: Yoast SEO / RankMath / All-in-One SEO / SEOPress
  • Forms: Contact Form 7 / WPForms / Gravity Forms / Elementor Pro / Ninja Forms
  • Elementor: Elementor / Elementor Pro

Missing Tools

If tools don't appear:

  • Restart Claude Desktop
  • Check config file exists: ~/.wp-ai-operator/config.json
  • Verify env vars: echo $WP_URL $WP_API_KEY
  • Check MCP server logs in Claude Desktop

Permission Errors

Ensure WordPress user has:

  • edit_posts, edit_pages - For content management
  • manage_options - For site settings
  • upload_files - For media uploads

Architecture

Microkernel design:

  • Kernel - Core API client, config management, multi-site routing
  • Extensions - Pluggable modules (Core, SEO, Forms, Elementor)
  • Gateway - MCP protocol adapter (stdio transport)

Extensions are loaded dynamically and can be enabled/disabled in config.

Development

git clone https://github.com/Digidinc/wp-ai-operator.git
cd wp-ai-operator/mcp-server
npm install
npm run build

# Test locally
node dist/index.js --test

License

MIT © DigID

Documentation: https://github.com/Digidinc/wp-ai-operator Issues: https://github.com/Digidinc/wp-ai-operator/issues WordPress Plugin: https://github.com/Digidinc/wp-ai-operator/releases

Keywords

mcp

FAQs

Package last updated on 17 Feb 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts