Skip to content
VS Code

WordPress MCP Server for VS Code

io.github.rnaga/wp-mcp

MCP server for WordPress. Manage posts, users, comments, terms, metadata, and settings.

client:VS Code transport:stdio runtime:npm

Install WordPress MCP Server in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "local-username",
      "description": "LOCAL_USERNAME",
      "password": true
    },
    {
      "type": "promptString",
      "id": "wp-db-host",
      "description": "WP_DB_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "wp-db-port",
      "description": "WP_DB_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "wp-db-name",
      "description": "WP_DB_NAME",
      "password": true
    },
    {
      "type": "promptString",
      "id": "wp-db-user",
      "description": "WP_DB_USER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "wp-db-password",
      "description": "WP_DB_PASSWORD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-multisite",
      "description": "LOCAL_MULTISITE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-default-blog-id",
      "description": "LOCAL_DEFAULT_BLOG_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-default-site-id",
      "description": "LOCAL_DEFAULT_SITE_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-ssl-enabled",
      "description": "LOCAL_SSL_ENABLED",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-ssl-ca-filepath",
      "description": "LOCAL_SSL_CA_FILEPATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-ssl-cert-filepath",
      "description": "LOCAL_SSL_CERT_FILEPATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "local-ssl-key-filepath",
      "description": "LOCAL_SSL_KEY_FILEPATH",
      "password": true
    }
  ],
  "servers": {
    "wp-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@rnaga/wp-mcp"
      ],
      "env": {
        "LOCAL_USERNAME": "${input:local-username}",
        "WP_DB_HOST": "${input:wp-db-host}",
        "WP_DB_PORT": "${input:wp-db-port}",
        "WP_DB_NAME": "${input:wp-db-name}",
        "WP_DB_USER": "${input:wp-db-user}",
        "WP_DB_PASSWORD": "${input:wp-db-password}",
        "LOCAL_MULTISITE": "${input:local-multisite}",
        "LOCAL_DEFAULT_BLOG_ID": "${input:local-default-blog-id}",
        "LOCAL_DEFAULT_SITE_ID": "${input:local-default-site-id}",
        "LOCAL_SSL_ENABLED": "${input:local-ssl-enabled}",
        "LOCAL_SSL_CA_FILEPATH": "${input:local-ssl-ca-filepath}",
        "LOCAL_SSL_CERT_FILEPATH": "${input:local-ssl-cert-filepath}",
        "LOCAL_SSL_KEY_FILEPATH": "${input:local-ssl-key-filepath}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

WordPress MCP Server in other clients