FavCRM

io.favcrm/favcrm · v1.0.0 · sales-and-crm

FavCRM is healthy: it completed an MCP handshake in 2724 ms and exposes 238 tools.

Agentic CRM for service businesses — bookings, customers, WhatsApp, loyalty, invoicing.

Endpoint: https://api.favcrm.io/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count238
Latency2724 ms
Last checked (UTC)2026-10-16T03:40:09.497Z

Health history

Checked (UTC)StatusLatencyError
2026-10-16T03:40:09.497ZHealthy2724
2026-10-15T00:25:48.763ZHealthy3126

Tools (100)

search_membersSearch and filter members/accounts. Supports text search, date ranges, booking/activity history, membership tier, tags, and more. Use lastBookingBefore/inactiveDays to find inactive members.
get_member_profileGet detailed profile for a specific member/account by ID.
preview_customer_importPreview a bulk customer import (max 2000 rows). Matches existing accounts by phone/email and shows create vs update actions plus points/stamps/credit deltas. Use commit_customer_import with the returned sessionId to apply.
commit_customer_importCommit a previewed customer import. Pass the same rows and sessionId returned by preview_customer_import. Creates/updates accounts and applies points, stamps, and credit deltas.
create_accountCreate a CRM account/customer with a primary contact. Optionally enroll the account as a member; use enrol_membership later when the account already exists.
update_accountUpdate CRM account/customer profile fields such as name, phone, email, life stage, owner, notes, or member code.
delete_accountSoft-delete a CRM account/customer. This releases the primary phone for future reuse while keeping account history for audit.
list_tagsList all available tags for the merchant.
create_tagCreate a CRM tag for customer segmentation and organization.
update_tagRename or recolor an existing CRM tag.
delete_tagDelete a CRM tag and remove it from all tagged entities.
attach_tagsAttach one or more tags to a member/account. Useful for segmenting members after filtering.
detach_tagsDetach one tag from one or more member/account records.
list_tiersList all membership tiers with member counts and stats.
get_membership_tierGet a specific membership tier by ID.
issue_rewardsIssue a gift/reward to multiple members. Requires a gift offer ID and member IDs.
enrol_membershipEnrol a member into a membership tier. Free tiers enrol immediately; paid tiers return PAYMENT_REQUIRED unless skipPriceCheck is set. Use list_tiers first to find the target tier.
get_loyalty_balanceGet a member's current loyalty balance — points, stamps, credits, lifetime totals, and active membership tier. Returns null if the member is not enrolled.
earn_loyalty_pointsCredit loyalty points or stamps to a member. Use field="points" for points, "stamps" for stamps. Server records a transaction with the reason as audit context.
get_dashboard_statsGet high-level business KPIs: member count, new members this week, active subscriptions, total points issued, active promotions, rewards redeemed, messages sent.
list_bookingsList bookings with filters for date range, status, service, staff, or member.
get_booking_detailGet full booking details including line items, status history, and participants.
get_booking_statsGet booking counts: today, this week, this month, and breakdown by status.
get_available_slotsFind available booking slots for a service on a specific date.
list_servicesList booking services with name, price, duration, and status.
get_service_detailGet full service details including addons, staff, resources, and tier pricing.
get_service_tier_pricingRead every membership-tier pricing configuration for one booking service.
set_service_tier_pricingSet the complete pricing and booking-policy configuration for one membership tier on a booking service.
copy_service_tier_pricingCopy the complete pricing and booking-policy configuration from one membership tier to another on the same booking service.
create_serviceCreate a bookable service. Sets duration, price, capacity, and policies. Use list_service_categories first if you want to attach to an existing category.
update_serviceUpdate an existing booking service. Pass only the fields you want to change.
create_service_scheduleCreate a bookable schedule window for a service, including recurring weekly/daily availability.
list_service_schedulesList schedule windows for booking services.
update_service_scheduleUpdate a service schedule window. Pass only fields to change.
assign_staff_to_serviceAssign a staff member to a booking service. Pass users.id from list_staff.userId.
link_resource_to_serviceLink a room/resource to a booking service.
list_service_categoriesList service categories (groups for booking services like "Treatments", "Classes").
create_service_categoryCreate a service category (e.g. "Treatments", "Classes") to group bookable services.
create_resourceCreate a bookable resource (room, equipment, vehicle). Used by services that have requiresResource=true.
set_resource_availabilityAdd an availability window for a resource. Use day-of-week + recurring=true for weekly schedules, or a specific date for one-off blocks.
set_staff_availabilityAdd an availability window for a staff member (companyMembers.id). Use day-of-week + recurring for weekly schedules, or a specific date for one-off changes.
get_booking_settingsGet global booking settings for the customer booking flow, cancellation rules, visibility options, and confirmation requirements.
update_booking_settingsUpdate global booking settings. Pass only the fields you want to change.
list_ticketsList support tickets with optional filters.
get_ticket_statsGet ticket counts grouped by status.
create_ticketCreate a support ticket for a member issue.
update_ticket_statusUpdate the status of an existing support ticket.
list_surveysList surveys with optional status/search filters.
create_surveyCreate a survey with custom question blocks. Publish it later or set status to published for immediate portal access.
get_surveyGet survey detail, including blocks, publishing status, visibility, settings, and response count.
update_surveyUpdate a survey draft or publishing configuration. Use questionBlocks to replace the ordered form block list.
archive_surveyArchive a survey and remove it from active survey lists.
get_survey_statsGet response and invitation metrics for a survey overview dashboard.
get_survey_responsesList responses for a survey.
list_survey_invitationsList survey invitation history without exposing token hashes or old invitation tokens.
create_survey_invitationCreate a token-auth survey invitation for a specific member/account or contact.
list_survey_workflowsList automation workflows attached to a survey.
upsert_survey_workflowCreate or update a survey automation workflow, usually triggered by survey_response_submitted.
list_dealsList CRM deals (sales pipeline) with optional filters.
get_dealGet detailed CRM deal information by ID.
create_dealCreate a CRM sales pipeline deal, optionally linked to a customer account and contact.
update_dealUpdate a CRM deal. Pass only fields to change; use null for nullable links/fields to clear them.
delete_dealSoft-delete a CRM deal from the sales pipeline.
update_deal_stageMove a deal to a different pipeline stage.
mark_deal_wonMark a CRM deal as won and set close date.
mark_deal_lostMark a CRM deal as lost. Requires a lost reason.
convert_leadConvert an account: qualify its open lead (creating one if needed) and link exactly one pipeline deal. Also promotes lifeStage lead -> active. Safe to repeat — a second call lands on the same lead and deal. Works on accounts that are already active.
list_contactsList contacts (people linked to CRM accounts), optionally filtered by account or search.
get_contactFetch a single contact by ID.
create_contactCreate a contact on an existing CRM account.
update_contactUpdate fields on an existing contact.
set_primary_contactSet a contact as the primary contact for its CRM account and demote other contacts on that account.
delete_contactDelete a secondary contact. Primary contacts are protected; set another primary contact or delete the account instead.
list_custom_fieldsList custom field definitions for CRM entities such as account, contact, deal, or booking.
get_custom_fieldGet a custom field definition by ID.
create_custom_fieldCreate a custom field definition for CRM entities. Use options for select or multiselect fields.
update_custom_fieldUpdate a custom field definition label, type, options, required flag, or sort order.
delete_custom_fieldDelete a custom field definition and its stored values.
get_custom_field_valuesGet custom field values for a CRM entity such as an account, contact, deal, or booking.
set_custom_field_valuesSet or clear custom field values for a CRM entity. Values are stored as strings; pass null to clear a value.
list_tasksList tasks with optional status, assignee, and account filters.
get_taskGet detailed task information by ID.
create_taskCreate a task. Optionally link to a CRM account or assign to a team member.
update_taskUpdate a task (status, priority, assignee, due date, completion).
delete_taskSoft-delete a CRM task.
search_crmSearch across CRM accounts and contacts by name, email, or phone.
list_invoicesList invoices with optional filters. Use status "OVERDUE" to find unpaid invoices past due date.
get_invoiceFetch a single invoice with line items, payment history, and customer detail.
create_invoiceCreate a new invoice for a customer. Optionally include line items inline. Returns the new invoiceId.
record_invoice_paymentRecord a manual payment against an invoice (cash, bank transfer, cheque, card terminal). Updates invoice status to PARTIAL or PAID based on the running total.
mark_invoice_sentMark an invoice as sent to the customer (transitions DRAFT → OPEN). Use after delivering the invoice via email or share link. Idempotent.
void_invoiceVoid an invoice. Destructive — invoice can no longer be paid or edited; existing payments are preserved as history. Cannot void invoices that are already PAID or VOIDED.
delete_invoiceDelete a DRAFT invoice. Only invoices that have never been sent can be deleted; otherwise use void_invoice.
restore_invoiceRestore a previously deleted DRAFT invoice.
get_invoice_statsOutstanding totals, overdue counts, and revenue this period. Used by the weekly-snapshot playbook.
list_event_registrationsList registrations for an event in the active company, including CRM account IDs for campaign exclusions.
get_event_campaign_exclusionsResolve pending, confirmed, and paid event registrations into unique CRM account IDs for campaign exclusions. Pass accountIds to audienceExclusions only when ready=true; cancelled registrations are omitted and unmatched guests make the result not ready.
list_subscriptionsList member subscriptions. Filter by status to find active, cancelled, or past-due subscriptions.
get_subscriptionFetch a single subscription with customer, tier, billing cycle, and renewal info.
create_subscriptionCreate a manual, non-renewing subscription record for a member. Use a subscription action link for provider-backed recurring billing.