CURSOR · MCP INTEGRATION

Build CRM tools
next to your code.

Add FavCRM to your mcp.json. Cursor's agent calls 154 typed tools — customers, bookings, loyalty, invoices, payments, WhatsApp / SMS / email — directly from chat. No SDK, no REST docs.

New — your agent can sign you up. Just ask: "Sign me up for FavCRM." A 6-digit code lands in your inbox; agent finishes the rest. No portal, no form.

~/.cursor/mcp.json

{

"mcpServers": {

"favcrm": {

"url": "https://api.favcrm.io/mcp",

"headers": {

"Authorization": "Bearer $${env:FAVCRM_API_KEY}"

}

}

}

}

favcrm connected. 154 tools loaded.

AGENT-CALLABLE BACKEND

154 typed MCP tools · annotations on every entry · Streamable HTTP transport

https://api.favcrm.io/mcp Pricing
WHAT CURSOR CAN CALL

Real CRM verbs. In your editor.

Every primitive a service business needs — typed, annotated, one MCP call away from your Cursor agent.

Cap 01

Customers

Search, segment, profile, enrol. Tags, notes, custom fields.

Cap 02

Bookings

Services, schedules, slots, packages. Multi-staff capacity rules.

Cap 03

Loyalty

Tiers, points, rewards, gift offers, automatic-reward triggers.

Cap 04

Commerce

Orders, invoices, Stripe payment links, subscriptions.

Cap 05

Comms

WhatsApp templates, SMS routing, transactional + marketing email.

Cap 06

Insights

Dashboard stats, segments, validate-promotion checks for checkout.

HOW IT WORKS

Sign up to first call in 60 seconds.

Cursor doesn't auto-provision the way Vercel does — you mint your own key. Worth it: full ownership of the workspace, no install/uninstall flow.

Step 01 — Sign up (or have your agent do it)

Free workspace + API key.

Two paths. Click through favcrm.io/signup and copy a key. Or paste the placeholder mcp.json (Step 02) first and ask Cursor: "Sign me up for FavCRM." The agent calls register_organisation_request, you paste back the 6-digit code from your inbox, and a fav_mcp_* key lands in chat. No portal, no form.

# Path A — agentic
> "Sign me up for FavCRM."
agent ›  Code sent to ow***@example.com
you   ›  382915
agent ›  Workspace ready · API key stored

# Path B — portal
favcrm.io/signup?source=cursor
→ workspace created
→ API key minted: fav_mcp_••••••

Step 02 — mcp.json

Paste the config snippet.

Cursor reads ~/.cursor/mcp.json (or .cursor/mcp.json in your project). Use ${env:VAR} so the key never lands in your repo.

{
  "mcpServers": {
    "favcrm": {
      "url": "https://api.favcrm.io/mcp",
      "headers": {
        "Authorization": "Bearer ${env:FAVCRM_API_KEY}"
      }
    }
  }
}

Step 03 — Export key

Set FAVCRM_API_KEY in your shell.

Anywhere your Cursor process can read it — shell rc, .envrc, OS keychain. Kept outside the repo so you can share mcp.json freely.

export FAVCRM_API_KEY=fav_mcp_•••••• \
  >> ~/.zshrc

# or per-project (direnv)
echo "export FAVCRM_API_KEY=fav_mcp_••••••" \
  >> .envrc

Step 04 — Restart Cursor

Tools light up in the chat panel.

Cursor connects via Streamable HTTP, calls tools/list, surfaces 154 typed tools. Ask the agent to do real CRM work — no SDK, no REST docs.

# Cursor → Settings → MCP → favcrm: connected ✓

> "Find members who haven't booked in 30 days,
   tag them as 'win-back', send a WhatsApp."

search_members → attach_tags → send_whatsapp
STARTER TOOLS

20 typed tools to start. 128 in the full catalog.

Every tool ships with annotations: title, readOnlyHint, destructiveHint, openWorldHint. Cursor uses these to flag destructive calls before invoking.

— Customers

5 tools

  • search_members

    Filter by tag, segment, last activity, tier.

  • get_member_profile

    Full profile + history.

  • list_contacts

    CRM contacts paginated.

  • create_contact

    Add a new lead or member.

  • list_tags

    Available tag taxonomy.

— Bookings

7 tools

  • list_services

    Bookable service catalog.

  • get_service_detail

    Service config, policy, capacity.

  • list_bookings

    Filter by status / date / customer.

  • get_booking_detail

    Single booking with timeline.

  • get_available_slots

    Open times for a date range.

  • create_booking

    Book a slot for a member — write tool.

  • confirm_booking

    Promote a held booking to confirmed.

— Loyalty

7 tools

  • list_tiers

    Membership tier ladder.

  • get_membership_tier

    Tier config + benefits.

  • enrol_membership

    Enrol a member into a tier — write tool.

  • get_loyalty_balance

    Points, stamps, credits, lifetime totals.

  • earn_loyalty_points

    Credit points or stamps — write tool.

  • list_promotions

    Active promo codes.

  • validate_promotion

    Pre-check a code at checkout.

— Insights

1 tool

  • get_dashboard_stats

    Top-line KPIs for the workspace.

Need the full 128-tool surface (campaigns, broadcasts, packages, custom fields)? See the developer docs.

SECURITY & DATA

Built so your reviewer doesn't have to.

Token scoping, env-var-only headers, and tool annotations — built in, not configured.

Per-key scoped access

Every fav_mcp_* key is bound to one user + workspace. Superadmin tools (raw SQL, plan management) are physically unreachable.

Bearer token, never inline

${env:FAVCRM_API_KEY} interpolation keeps the key out of mcp.json. Rotate from the merchant portal — old keys revoke instantly.

Annotations on every tool

tools/list surfaces title + readOnlyHint / destructiveHint / openWorldHint. Cursor can flag destructive calls before invoking.

Data hosted in Hong Kong

Cloudflare D1 + Workers, primary region HKG. PDPO-aligned. See Privacy Policy and Terms of Use.

Read the Privacy Policy and Terms of Use.

PRICING TRAIL

Free for prototypes. Paid when you ship.

Sign up free. Upgrade to Lite for a real workspace, or Starter for bundled AI agent and meeting notes — same dashboard, no re-install.

Free
$0 forever

100 customers · 200 bookings/mo · 1k MCP calls/mo

Lite FOR CURSOR
$19 /mo · for Cursor

Real workspace · 1 seat · email · BYO-AI via Cursor

Starter
$49 /mo

3 seats · 1M AI credits · WhatsApp + SMS · meeting notes

08 · Frequently asked

Set up in 60 seconds.

Phrased to mirror what you'd ask Perplexity / ChatGPT / Claude. Same exact wording lives in the page's FAQPage schema for direct citation.

Q.01 How do I add FavCRM to Cursor?
Paste a JSON snippet into ~/.cursor/mcp.json (or .cursor/mcp.json in your project), set FAVCRM_API_KEY in your shell, and restart Cursor. The agent connects via Streamable HTTP and surfaces 154 typed tools in the chat panel. Total setup time is about 60 seconds.
Q.02 Do I need an API key first?
No. With the placeholder mcp.json connected, you can ask Cursor "sign me up for FavCRM" — the agent calls register_organisation_request, you paste back the 6-digit code from your inbox, and a fresh fav_mcp_* key lands in chat. The OTP-gated agentic signup means no portal click is required. You can also sign up the traditional way at favcrm.io/signup.
Q.03 How does Cursor authenticate to FavCRM?
Bearer token. Cursor reads ${env:FAVCRM_API_KEY} from your shell environment at request time, so the key never lands in your repo or shared mcp.json. Rotate from the merchant portal at app.favcrm.io/settings/mcp-keys — old keys revoke instantly.
Q.04 What tools can the Cursor agent call?
154 typed tools across 22 scopes — customers, bookings, loyalty, invoicing, subscriptions, content, communications, AI knowledge. Every tool ships with MCP annotations (title, readOnlyHint, destructiveHint, openWorldHint, idempotentHint), so Cursor can flag destructive calls before invoking. The full catalog at api.favcrm.io/.well-known/mcp/server-card.json is the source of truth.
Q.05 What does the free tier cover for a Cursor user?
100 customers, 200 bookings per month, 1k MCP calls per month. No credit card. Enough to wire FavCRM into a real Cursor project for a side-business or a small studio. Paid plans start at $19/mo (Lite — 1 seat) and scale to $49/mo (Starter — 3 seats, WhatsApp + SMS, 1M AI credits).
Q.06 Can the Cursor agent do destructive operations like cancel + refund?
Yes, with safety gates. Tools that mutate or destroy data carry destructiveHint=true in their annotations. Cursor surfaces a confirmation prompt before invoking. Recommended playbooks like /cancel-and-refund explicitly walk the agent through customer confirmation before calling the destructive tool.
Q.07 Does this work with Windsurf, Continue.dev, Zed, or Cline?
Yes. The same mcp.json / Bearer-token shape works on any MCP-compatible client that speaks Streamable HTTP — Windsurf, Continue.dev, Zed, Cline, Roo Code, Replit Agent. Smithery offers smithery mcp add favcrm/favcrm for one-command install.
Q.08 Where is FavCRM hosted?
Cloudflare D1 + Workers, primary region Hong Kong (HKG). Edge runtime keeps cold-start latency under 50ms globally. PDPO-aligned for Hong Kong merchants.

Verified . Live tool count + manifest at /server-card.json.

Sign up.
Paste mcp.json.

A real CRM backend lives in your Cursor chat from the next prompt onwards.