Install
Five minutes to deploy.
Fork the repo, fill in one TOML file, and run wrangler deploy. No SDK install on your site, no plugin in your CMS.
1. Clone
git clone https://github.com/basgr/cf-webmcp
cd cf-webmcp
npm install
2. Pick a template
Three starters ship:
templates/default.toml- generic site (sitemap + RSS + dom_extract).templates/wordpress.toml- WordPress core REST endpoints.templates/woocommerce.toml- WooCommerce Store API on top of WordPress.
cp templates/wordpress.toml webmcp.toml
cp wrangler.example.toml wrangler.toml
3. Edit
Open webmcp.toml and set:
[site].domain- your domain.[origin].base_url- your origin URL.[origin].allowed_origins- list of origins executors may fetch (usually just your origin).- Tool URLs in each
[[tools]]block.
Open wrangler.toml and set the route for your domain.
4. Preflight
npm run preflight -- --config=webmcp.toml
Reports OK / merge / COLLISION per path the Worker wants to claim. Exits non-zero on hard collisions unless you pass --force.
5. Deploy
npm run deploy
This chains npm run build (compiles TOML to TypeScript modules) and wrangler deploy. Hit /_webmcp/health on your domain to confirm the deploy landed.
Verify
After deploy, hit these URLs on your domain:
/.well-known/webmcp.json- the tool catalogue./mcp- the auto-generated pairing/landing page./llms.txt- your llms.txt with the WebMCP block appended./robots.txt- your robots.txt withDisallow: /_webmcp/appended./.well-known/agents.md- agent instructions in Markdown;/AGENTS.mdand/agents.md301 to here./_webmcp/health- operational health JSON with the diagnostic and config hash.
For local dev, see the docs.