Connect an AI assistant to your site
Let your own AI assistant read your site and draft page edits and blog posts. It can only draft: nothing goes live until someone on your team clicks Publish. Setup takes about 10 minutes.
Before you start
You will need
- A WorkspaceCMS site on the Premium or Ultra plan.
- To be the account owner. Only owners see the Developer API card.
- An AI tool that can add a custom MCP server: the Claude app, ChatGPT (paid plans, with developer mode), Claude Code, Cursor, VS Code with GitHub Copilot, or another MCP client.
Using the Claude or ChatGPT app?
Those apps sign in instead of using a key, so you do not need to create one. If nobody has accepted the Developer API terms yet, do that once first: in Settings, click + Generate API Key and accept them. Then copy your server address from the Connect an AI assistant card and follow the app steps in step 2.
Create a key that can draft
The key is how your assistant proves it is allowed in. Treat it like a password.
- Sign in to WorkspaceCMS and open Settings. Scroll to the Developer API card.
- Click + Generate API Key.
- The first time, a box asks you to Accept Developer API Terms. Read the terms, tick the box, type your full legal name and click Accept & continue. You only do this once.
- Name the key after the tool you are connecting, like
ClaudeorCursor. Add an expiry date if you want one. - Tick Let AI assistants draft changes. Without it the key can only read, and the assistant cannot draft anything.
- Click Generate Key. Copy the key now and keep it somewhere safe. It is shown once. Then click Done, I saved it.
- Under the key list, find the Connect an AI assistant card and click the copy button next to the server address. It looks like
https://app.workspacecms.ai/api/mcp/your-site, with your own site in place ofyour-site.
Add it to your assistant
Pick your tool below. In every example, replace https://app.workspacecms.ai/api/mcp/your-site with the server address you copied. For the tools that use a key, replace YOUR_API_KEY with your key, and always keep the word Bearer and the space after it in front of the key.
Claude app (claude.ai, desktop and mobile)
- Open Settings, then Connectors, and click Add custom connector.
- Name it
WorkspaceCMS, paste your server address and click Add. - Click Connect. Sign in to WorkspaceCMS if asked, check the request and click Allow.
No key needed. Approving creates one for the app, shown in your key list as (signed in). Only an account owner can click Allow.
ChatGPT
Custom connectors need developer mode, which is on paid ChatGPT plans.
- Open Settings, then Apps and Connectors. Under Advanced, turn on developer mode.
- Create a connector named
WorkspaceCMS, paste your server address and choose OAuth for sign-in. - Connect it. Sign in to WorkspaceCMS if asked, check the request and click Allow.
Like the Claude app, ChatGPT gets its own key, shown as (signed in).
Claude desktop app, using its config file instead
The connector above is the easy way. If you would rather use a key, this works on every Claude plan and needs Node.js installed. In the desktop app open Settings, then Developer, then Edit Config. Add this to the file, save it and restart Claude.
{
"mcpServers": {
"workspacecms": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://app.workspacecms.ai/api/mcp/your-site",
"--header",
"Authorization:${WCMS_AUTH}"
],
"env": {
"WCMS_AUTH": "Bearer YOUR_API_KEY"
}
}
}
}Leave ${WCMS_AUTH} exactly as written. The key goes only in the env section.
Claude Code
Run this once in your terminal:
claude mcp add --transport http workspacecms https://app.workspacecms.ai/api/mcp/your-site \
--header "Authorization: Bearer YOUR_API_KEY"Run /mcp inside Claude Code to check it shows as connected.
Cursor
Open Cursor Settings, go to the MCP section and add a new MCP server. That opens mcp.json (the global file is ~/.cursor/mcp.json). Add:
{
"mcpServers": {
"workspacecms": {
"url": "https://app.workspacecms.ai/api/mcp/your-site",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Save the file. WorkspaceCMS shows a green dot in the MCP list when it connects.
VS Code (GitHub Copilot agent mode)
Create .vscode/mcp.json in your project. This version asks for the key when it starts, so the key is never saved in the file:
{
"inputs": [
{
"type": "promptString",
"id": "wcms-key",
"description": "WorkspaceCMS API key",
"password": true
}
],
"servers": {
"workspacecms": {
"type": "http",
"url": "https://app.workspacecms.ai/api/mcp/your-site",
"headers": {
"Authorization": "Bearer ${input:wcms-key}"
}
}
}
}Click Start above the server entry and paste your key when asked.
Any other MCP client
The server speaks MCP over Streamable HTTP with JSON responses, no session and no event stream. Send each JSON-RPC message as a POST to the server address with the header Authorization: Bearer YOUR_API_KEY. It supports initialize, ping, tools/list and tools/call. The full reference is in the OpenAPI spec.
Ask for a change
Talk to your assistant normally. For example:
- “Add a sentence to my About page saying we now paint offices.”
- “Write a draft blog post about spring cleaning tips.”
- “List my blog posts and suggest better titles for the three oldest.”
The first time it uses WorkspaceCMS, your assistant may ask permission to run a tool. Allow it.
Review and publish
- You get a notification in the dashboard bell when the assistant starts a draft.
- Edited pages show Unpublished changes. Open the page, check it, then click Publish changes, or Discard changes if you do not want them. The editor marks these drafts Drafted by your connected AI assistant.
- New blog posts wait in your blog as drafts. Open each one, check it and publish it.
Want someone else to look first? See drafts and preview links.
What it can and cannot do
It can
- Read your published pages, blog posts and media
- Draft changes to a page’s text, links and images
- Create new blog posts as drafts
- Update blog posts that are still drafts
It cannot
- Publish anything
- Delete pages or posts
- Change a page’s web address or template
- Edit a blog post that is already published
- Change robots, canonical or other SEO settings
Troubleshooting
- The assistant says it is unauthorized, or shows a 401 error
Check the value starts with
Bearerand a space, then the whole key. Check the key was not revoked or past its expiry date in the Developer API card. A key only works for its own site, so check the server address ends in your site. If in doubt, create a new key and connect again.- The Claude or ChatGPT app will not finish connecting
Read the message on the WorkspaceCMS screen that opens. Only an account owner can click Allow, the site must be on Premium or Ultra, and the Developer API terms must be accepted once in Settings (click + Generate API Key, then accept). With 5 active keys already, revoke one first. The sign-in screen lasts 15 minutes, so if it expired, start again from the app.
- It says the API key is read-only
The key was created without Let AI assistants draft changes. Create a new key with that box ticked and use it instead. Revoke the old one.
- The assistant cannot see any WorkspaceCMS tools
In Cursor, check the server is enabled in the MCP list. In Claude Code, run
/mcp. Restart the app after editing a config file.- I do not see the Developer API card
Only account owners see it. On Essentials and Growth it shows an upgrade message instead of the Generate button, because keys come with Premium and Ultra. Ask your account owner, or compare plans on the pricing page.
- My change is not on the live site
That is expected. Everything the assistant writes is a draft. Open the page or post in WorkspaceCMS and publish it. The live site updates in about a minute.
- It says the rate limit was exceeded
Each key allows 600 requests a minute and each site 50,000 a day. Wait for the time it gives, then try again.
Which AI assistants can I connect?
Any assistant that can add a custom MCP server and send your API key as a Bearer token. The Claude and ChatGPT apps connect by signing in, so they need no key. Claude Code, Cursor and VS Code with GitHub Copilot connect with an API key, and so can any other MCP client that sends a Bearer token. In ChatGPT, custom connectors need developer mode, which is on paid ChatGPT plans.
Can the assistant break my live site?
No. It can only draft. It cannot publish, delete pages, change a page address or template, or edit a published blog post. Edited pages show Unpublished changes and new posts wait as drafts until a person on your team publishes them.
What does it cost?
Nothing extra on WorkspaceCMS. The assistant runs on your own AI account, under that account's plan. Each request counts toward your normal Developer API limits of 600 requests a minute per key.
Which plans include it?
Premium and Ultra. Only an account owner can create API keys.
How do I disconnect it?
Open Settings, find your key in the Developer API card and click Revoke. An app that connected by signing in has its own key, marked (signed in). The assistant loses access straight away. Remove the connector in the assistant too, so it stops trying.
Can more than one person connect an assistant?
Yes. You can have up to 5 active keys. Give each person or tool its own key with a clear name, so you can revoke one without affecting the others.
Do I have to use this?
No. Our team still makes changes for you whenever you ask. This is for people who already use an AI assistant and want it to help with their site.