Skip to content

Your EMCP guide

Answers from our docs

YOUR CHAT, YOUR CHOICE

Before we chat

MSR Builds processes your question and up to four recent messages on our server to answer from the EMCP docs. AI is optional and needs your separate permission.

The chat is kept in this page's memory, not saved as a conversation in our database or browser storage. Our hosting and security services process connection information, such as your IP address, to prevent abuse.

Cloudflare Turnstile checks your browser and connection to prevent automated abuse when you send a question. No login is required.

Please leave out personal, sensitive or confidential information, passwords and API keys.

You can withdraw consent and clear this page's chat at any time. This cannot undo a request already sent or erase provider/security records.

Chat privacy, retention & your rights ↗ · Privacy contact

Starting chat consents to this processing. You can browse our docs without using the chat.

Multiple sites (one connection)

New in @msrbuilds/emcp-proxy 1.9.0. Instead of one WP_URL, give the proxy a site registry and switch between installs mid-session, ideal for agencies managing many client sites from a single Claude session.

Set EMCP_SITES to a JSON map of aliases → credentials (or point EMCP_SITES_FILE at a JSON file with the same shape):

{
"mcpServers": {
"emcp-tools": {
"command": "npx",
"args": ["-y", "@msrbuilds/emcp-proxy@latest"],
"env": {
"EMCP_SITES": "{\"acme\":{\"url\":\"https://acme.com\",\"username\":\"admin\",\"appPassword\":\"xxxx xxxx xxxx xxxx\"},\"globex\":{\"url\":\"https://globex.com\",\"username\":\"admin\",\"appPassword\":\"yyyy yyyy yyyy yyyy\"}}",
"EMCP_DEFAULT_SITE": "acme"
}
}
}
}

EMCP_DEFAULT_SITE picks which site the session starts on (defaults to the first entry). Single-site WP_URL mode is unchanged and adds none of the tools below.

The Connection wizard on each site generates single-site configs only, so write the registry by hand. For each site, create an application password in EMCP Tools → Connection (choose Application password in step 2, then Create password in step 3; it is shown once) or under Users → Profile → Application Passwords.

When more than one site is configured, the proxy injects two tools:

  • emcp_list_sites: list the configured sites and which one is active.
  • emcp_use_site: switch the active site ({ "site": "globex" }); every subsequent tool call targets it.

The proxy keeps a separate session per site and initializes each one transparently on first use, so switching “just works” without re-connecting.

User: List my sites.
AI → emcp_list_sites → [acme (active), globex]
User: Switch to globex and audit the homepage.
AI → emcp_use_site { site: "globex" }
AI → get-page-snapshot { post_id: … } // now runs against globex

New in @msrbuilds/emcp-proxy 1.10.0. Instead of switching the active site with emcp_use_site and running several calls against it, pass site: "<alias>" as an extra argument on any tool call to route just that one call, without changing the session’s active site:

AI → get-page-snapshot { post_id: 12, site: "globex" } // this call only
AI → list-pages { } // still targets the previously active site

Useful for one-off cross-site lookups (a comparison, a spot-check) where switching the whole session would be overkill.

Each .mcpb bundle and each registry entry embeds a WordPress application password in plaintext. Treat these configs and bundle files as secrets (don’t commit them to git or leave them in cloud-synced folders). See Claude Desktop for the one-click bundle flow, which now also names each site’s bundle uniquely so multiple sites install side by side.