GoBuildWP

GLM development environment, Native OAuth

ZCode (GLM) WordPress MCP. Add it on the MCP Servers screen.

ZCode (GLM) WordPress MCP servers are added on a settings screen, not in a file you edit first. ZCode is Z.ai's desktop development environment for its GLM models; its MCP Servers screen takes stdio, HTTP or SSE servers, stores them for the user or one workspace, and offers an Open authorization button for OAuth servers.

Checked against ZCode (GLM)'s documentation on 29 September 2026, entries from GoBuildWP Free 1.18.6

ZCode, Settings, MCP Servers, New MCP ServerOAuth 2.1
Type   HTTP
Name   gobuildwp-your-site-com
URL    https://your-site.com/wp-json/mcp/wppilot-oauth
OAuth  Enabled, then Open authorization
Add in
Settings, MCP Servers, New MCP Server
Types
stdio, HTTP, SSE
Files
~/.zcode/cli/config.json, .zcode/config.json

Setup

Add WordPress in ZCode

ZCode needs a Z.ai or BigModel account with a Coding Plan. The MCP screen is the same for every model it runs.

  1. Open New MCP Server

    Settings, then MCP Servers, then New MCP Server in the upper right.

  2. Choose HTTP

    The Type selector defaults to stdio. Switch it to HTTP, paste the URL into Service URL, and add the Authorization header under Headers if you use a token.

  3. Pick the scope

    User keeps the site for every project; Workspace limits it to the one open.

  4. Or paste JSON

    Full configuration mode accepts a pasted block in either a bare name form or an mcpServers wrapper. The documentation only shows a stdio example, so check the fields on the form after pasting.

  5. Authorize

    An OAuth server shows Authorization required with an Open authorization button on its row. Press it and sign in to WordPress.

Verify the connection before allowing changes

Select Read Only explicitly; the default is Production Safe. Use a dedicated identity with manage_options on a single site, or superadmin on multisite. Match the named tool call, site URL and returned record ID against WordPress.

First connection checkRead Only
Use the gobuildwp-your-site-com MCP server in ZCode (GLM). Do not change anything.

1. Report the active GoBuildWP safety profile.
2. List the abilities this connection can see.
3. Call wppilot/get-site-settings and report the site URL and locale.
4. Call wppilot/list-content for the five newest pages,
   then wppilot/get-content on one of them.
5. Name every ability you called and each WordPress ID you read.

These setup instructions are not a recorded live-client test. Keep credentials out of repositories, logs and shared files.

Connect screen

The ZCode (GLM) entries GoBuildWP writes

GoBuildWP's OAuth tab for ZCode is two steps rather than a file: add a New MCP Server of type HTTP with the OAuth URL and OAuth enabled, then press the Open authorization button that appears on its row. The token instructions choose HTTP, paste the canonical URL and add the Authorization header; the Application Password instructions choose stdio and run the npx bridge.

OAuth 2.1HTTP type, the OAuth URL, OAuth enabled, then Open authorization on the server's row.
Access tokenHTTP type, Service URL and an Authorization header in Headers.
Application Passwordstdio type running the npx bridge with credentials in env.

Endpoints on your site: /wp-json/mcp/wppilot-oauth for OAuth, /wp-json/mcp/wppilot for tokens and passwords. Through the optional GoBuildWP Cloud instead, every client uses https://app.gobuildwp.com/mcp with the server name gobuildwp, and a personal Cloud token is read from GOBUILDWP_TOKEN where the client supports environment variables.

ZCode MCP server managerAccess token
{
  "mcpServers": {
    "gobuildwp-your-site-com": {
      "type": "http",
      "url": "https://your-site.com/wp-json/mcp/wppilot",
      "headers": {
        "Authorization": "Bearer wpp_YOUR-ACCESS-TOKEN"
      }
    }
  }
}

First task

A first ZCode task

Ask the GLM agent for a content inventory it can reuse in later sessions.

ZCode (GLM) promptReads only
Read the WordPress site only; do not edit it.
Save approved inventory notes locally in this workspace.

1. wppilot/list-content for published pages and posts.
2. wppilot/list-terms for categories.
3. Build a table: title, type, category, last modified.
   Exclude private content and credentials from the file.

Troubleshooting

ZCode (GLM) errors and their causes

SymptomCause and fix
Nothing happens with the stdio defaultThe Type selector was left on stdio with a URL. Choose HTTP.
Authorization required never clearsPress Open authorization and finish the WordPress sign-in; check the site's OAuth discovery document returns JSON.
Servers in ~/.agents/mcp.json are ignoredZCode's own files define servers, so the compatibility files are skipped. Import them from the MCP screen.
A pasted block failsPaste it in Full configuration mode, not into the Service URL field.

Inside ZCode (GLM)

Where ZCode keeps and shows servers

User servers are stored in ~/.zcode/cli/config.json and workspace servers in the project's .zcode/config.json, both under mcp.servers. Disabling a server from the screen writes enable: false rather than deleting it.

ZCode also reads ~/.agents/mcp.json and a project's .agents/mcp.json, but only when its own files define no servers; the import icon on the MCP screen pulls servers from Claude Code, Codex CLI, OpenCode and .agents files if you already configured WordPress there.

ZCode's documentation does not describe logs or a tool approval model for MCP, so rely on the row's status and on GoBuildWP's own connection list when checking whether requests arrive.

Signs it worked

  • The row no longer says Authorization required
  • The server is enabled for the intended scope
  • The agent lists wppilot/ tools
  • GoBuildWP's Overview shows the connection

Related

Related guides

  • Kimi Code CLI: another agent that signs in with a command after the entry is added
  • OpenCode: one of the configs ZCode can import

ZCode (GLM) documentation read on 29 September 2026

ZCode once the server is green

Keeping ZCode's content inventory current

The first ZCode task saves a table of pages, posts and categories in the workspace so later GLM sessions can start from it. An inventory goes stale the moment someone edits in wp-admin, so give the agent a cheap way to notice. wppilot/get-page-snapshot returns a compact digest of a page, including content fingerprints and its modification state, which is enough to tell whether a row in the notes still matches the site without reading every page in full.

A practical rhythm is to refresh the table at the start of any session that will touch content, compare fingerprints, and re-read only the pages that changed with wppilot/get-content. Ask ZCode to record the date of each refresh in the notes, so you can see how old its picture of the site is. Keep the notes free of anything private the site returns, such as unpublished drafts or user details, if the workspace is shared or committed to a repository, because the file outlives the session that wrote it.

  • "For every page in notes, call wppilot/get-page-snapshot and mark the rows whose content changed since the last refresh."
  • "Re-read only the changed pages and update their rows. Do not edit the site."

With no documented approval model, limit what ZCode can reach

ZCode's documentation does not describe how it asks before calling an MCP tool, so plan as if it might not. That moves the safety decisions to the site, where GoBuildWP enforces them regardless of the client. Keep the site on Read Only while ZCode is only building inventories. When it needs to write, prefer an access token over the OAuth sign-in, limited to the abilities the task uses and given an expiry, because a token's scope also hides everything else from ZCode's tool list.

After any session that wrote, read the change ledger. wppilot/list-changes shows each write with the credential and client behind it, and wppilot/list-sessions shows what wppilot/undo-session could reverse: changes with a supported restore and saved before-state, provided nothing else edited those targets since. Irreversible items are listed, and the run is refused rather than half-done unless you allow a partial undo.

User servers, workspace servers and client sites

ZCode stores a server either for you, in ~/.zcode/cli/config.json, or for one workspace, in that project's .zcode/config.json. For agency work the workspace scope is the safer default: the staging site of the client whose repository is open is the only WordPress server the GLM agent sees, and opening another client's project never exposes the first one. Keep production sites out of the user scope altogether, so no workspace can reach them by default.

Disabling a server from the screen writes enable: false and keeps its settings, which is handy for a site you only touch occasionally. Leave it disabled between sessions; the agent cannot call a server that is switched off, whatever a prompt or a page on the site says.

Importing an existing WordPress entry

The import icon on ZCode's MCP screen can pull a WordPress server you already set up in Claude Code, Codex CLI or OpenCode. The configuration comes across; think about the credential. An OAuth entry will need its own Open authorization in ZCode, which gives ZCode a separate grant in Connected Apps, and that is what you want. A token entry, though, copies the header, and two clients sharing one token look identical in the ledger and can only be revoked together. Create a new token for ZCode and replace the imported one.

ZCode is not among the apps GoBuildWP Cloud lists by name. Its HTTP servers support OAuth through Open authorization, so the Cloud link may work the same way, but that has not been checked; a direct entry per site is the documented setup.

FAQ

ZCode questions

Does ZCode support remote MCP servers with OAuth?

Yes, for HTTP and SSE servers, through the Open authorization button. GoBuildWP's OAuth steps for ZCode add the OAuth URL as an HTTP server and end on that button.

Can ZCode import my WordPress server from another client?

Yes. The import icon reads Claude Code, Codex CLI, OpenCode and .agents configurations.

Which ZCode plan do I need?

ZCode requires a Z.ai or BigModel account with a Coding Plan. GoBuildWP Free has no plan requirement.

Add WordPress to ZCode on one screen.

HTTP type, the Service URL, and Open authorization.