Church website content MCP server
Sign in to track installsConnect Claude Desktop to your church website's CMS so Claude can read and (with your approval) draft updates to pages, sermon series posts, and event landing pages — without you ever leaving the conversation. Drops into Claude Desktop with one config-file edit.
Quick install.
Grab the install file below — drop it where the setup guide tells you.
Filename: church-website-content-mcp-claude_desktop_config.json
Setup guide.
Step-by-step from “fresh install” to “first run.” Skim it once, then keep this page open while you go.
Before you start
Three CMS adapters ship with this MCP server: Sanity (schema-driven, GROQ-backed), WordPress (REST API + custom post types), and Webflow (CMS Collections API). Pick whichever your church site is built on. The adapter abstracts away the differences so you can ask Claude 'update the next sermon series landing page' regardless of stack.
Step 1 — Generate a CMS API token
Sanity: manage.sanity.io → Project → API → Tokens → Add token (Editor scope). WordPress: Users → Profile → Application Passwords → Add new (give it a name like 'Claude Desktop'). Webflow: Account → Integrations → API access → Generate API token (CMS scope). Copy the token — you'll only see it once.
Step 2 — Wire the MCP snippet
Open your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS; %APPDATA%\Claude\claude_desktop_config.json on Windows) and merge in the snippet from the Quick Install download. Replace REPLACE_WITH_sanity_OR_wordpress_OR_webflow with one of: sanity, wordpress, webflow. Replace REPLACE_WITH_YOUR_CHURCH_WEBSITE_URL with your full domain. Replace REPLACE_WITH_YOUR_CMS_API_TOKEN with the token from Step 1.
Step 3 — Keep WRITE_REQUIRES_CONFIRMATION on for the first week
By default, the MCP server requires you to confirm any write before it lands in the CMS. Claude proposes the edit; you say 'yes' or 'no'. Leave WRITE_REQUIRES_CONFIRMATION=true for at least the first week so you can build trust before flipping it to false (which lets Claude push edits without asking — useful for batch updates, riskier for first-time use).
Step 4 — Restart Claude Desktop and try a read first
Quit Claude fully (cmd-Q / right-click tray icon → Quit) and reopen. The wrench icon in the chat should now show 'church-website-content' connected. Try a read first: 'List my published sermon series posts'. If Claude responds with a list, you're good. Then try a tentative write: 'Draft an update to the next series landing page that adds a memory verse.'
Treat the API token like a password
Troubleshooting.
Hit one of these? Here's the fix.
401 / 403 from the CMS on every request
The token's scope is too narrow. Sanity tokens with 'Viewer' scope can read but not write — make sure it's 'Editor'. WordPress Application Passwords inherit the user's role, so the user behind the password must have Editor or Administrator capabilities. Regenerate with the right scope and update the env.
Webflow writes succeed but don't appear on the live site
Webflow's API writes to the staged version of a CMS Collection. You still need to publish from the Webflow Designer (or call the Publish API) to push staged changes live. The MCP server adds a 'publish_after_write' flag — set it true on the Claude command if you want auto-publish on a per-edit basis.
Discussion.
Per-integration ratings and comments open with the v3 community release. For now, send feedback to [email protected] — David reads every one.