Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI → MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE ↗ (opens in a new tab)
  • llms.txt ↗ (opens in a new tab)
  • Catalog JSON ↗ (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub ↗ (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. Developer Tools
  3. Juicy Designs Quote
  4. README

Juicy Designs Quote README

The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Juicy Designs Quote listing page.

Back to Juicy Designs Quote View source on GitHub

Juicy Designs — Quote MCP Server + REST API (Cloudflare Worker)

Request and read-only capabilities for AI agents, exposed two ways:

TransportPathFor
MCP (Streamable HTTP)POST /mcpChatGPT / Claude / agent connectors
REST requestPOST /quote, POST /strategy-sessionAgentic browsers / OpenAPI clients
REST readGET /service-catalog /service-areas /case-studies /client-reviews /faqsRead reference data
DiscoveryGET /, GET /openapi.jsonHealth + machine-readable spec

Tools

ToolTypePurpose
get_quoterequestSubmit a free, no-obligation quote request. Consent-gated.
book_strategy_sessionrequestRequest a free strategy session. Consent-gated.
get_service_catalogreadServices + reference "from" floors (reference only).
get_service_areasreadWhere Juicy Designs works.
get_case_studiesreadTrack record and portfolio pointer.
get_client_reviewsreadAggregate Google rating and review source.
get_faqsreadCommon questions and answers.

Both request tools share the same server-side validation and the same forwardLead() sink, which posts the lead to the existing Juicy Designs Apps Script form handler as form_type=quote — leads land exactly where the website form's leads land (email + the "Leads" Google Sheet). Read tools return curated static data only; no PII, no external calls.

Guarantees

  • Never returns or implies a price. Published "from" figures are entry-point references only, never a quote or estimate. Confirms receipt + the four-working-hour SLA only.
  • Rejects consent_to_contact !== true on every request tool (POPIA).
  • All input validated server-side — the model's extraction is never trusted.
  • Read tools are side-effect-free and contain no per-user calculation.
  • Enum inputs map to the labels the Apps Script email/sheet expects.

Deploy

bash
cd mcp-quote-worker
npm install

# 1) Lead sink (the existing Apps Script /exec URL)
npx wrangler secret put LEAD_ENDPOINT
#   paste: https://script.google.com/macros/s/AKfycb.../exec

# 2) (optional) per-IP rate limit — Apps Script already throttles 5/10min
# npx wrangler kv namespace create RATELIMIT   # then paste id into wrangler.toml + uncomment

npx wrangler deploy

Deploy prints the Worker URL, e.g. https://juicy-designs-quote.<subdomain>.workers.dev. Put that origin into openapi.yaml (servers.url) and wherever you advertise the endpoint.

Local test

Terminal
npx wrangler dev          # serves on http://localhost:8787

# REST
curl -s localhost:8787/quote -H 'content-type: application/json' -d '{
  "name":"Sipho Dlamini","email":"sipho@example.co.za","service":"seo",
  "project_summary":"E-commerce store, want to rank for running shoes in SA.",
  "budget_range":"25k_75k","timeline":"1_3_months","consent_to_contact":true
}'

# MCP: list tools
curl -s localhost:8787/mcp -H 'content-type: application/json' -d \
  '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

# MCP: call get_quote
curl -s localhost:8787/mcp -H 'content-type: application/json' -d \
  '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_quote","arguments":{"name":"Sipho","email":"s@x.co.za","service":"seo","project_summary":"Need SEO for a new store in Pretoria.","consent_to_contact":true}}}'

A request without consent_to_contact:true must come back as an error — that is the POPIA gate working.

Connect as a connector

Claude (Settings → Connectors → Add custom connector): URL = https://<worker>/mcp. ChatGPT (Settings → Connectors / Developer mode): add an MCP server with the same /mcp URL. The connector lists one tool, get_quote. The agent should read the fields back and confirm consent with the user before calling. No authentication is required (the tool only creates a lead).

Connector discovery (so agents can find it)

After deploy, advertise the endpoints from the site:

  1. A short docs page (e.g. /connect/ or a section on /quote/) listing the MCP + OpenAPI URLs.
  2. Append to llms.txt (root of juicydesigns.co.za):
Code
## For AI agents
- MCP server (request a quote): https://<worker>/mcp
- OpenAPI 3.1 spec: https://<worker>/openapi.json

(Left out of llms.txt until you have the real Worker URL — paste it in post-deploy so there is no dead link.)

Map of inputs → Apps Script fields

MCP/REST inputsent asshown in email/sheet
service (enum)services (label)Services
budget_range (enum)budget (label)Budget
project_summary (+ timeline + source)messageMessage
name / email / phone / companysameas-is
form_typequoteroutes to the quote email/template

Swap the body of forwardLead() in src/index.ts to send leads elsewhere (CRM, webhook, Resend).