FavCRM
REMOTE · API.FAVCRM.IO · SCANNED AUG 4
Agentic CRM for service businesses — bookings, customers, WhatsApp, loyalty, invoicing.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security89
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token. See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability85
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 18916 tokens (~82/item across 228 items; 223 tools + 5 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management30
- Stability observed for 9 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · api.favcrm.io
claude mcp add --transport http io-favcrm-favcrm https://api.favcrm.io/mcp
[mcp_servers.io-favcrm-favcrm] url = "https://api.favcrm.io/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"io-favcrm-favcrm": {
"type": "remote",
"url": "https://api.favcrm.io/mcp",
"enabled": true
}
}
} openclaw mcp add io-favcrm-favcrm --url https://api.favcrm.io/mcp --transport streamable-http
mcp_servers:
io-favcrm-favcrm:
url: "https://api.favcrm.io/mcp" {
"mcpServers": {
"io-favcrm-favcrm": {
"type": "http",
"url": "https://api.favcrm.io/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 +4
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 74
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Aug 2026 · Probed https://api.favcrm.io/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=favcrm.io | CN=WE1,O=Google Trust Services,C=US | 13 Jun 2026 | 11 Sept 2026 | ECDSA 256 | ECDSA-SHA256 | 8b36e4b5d46a89d8137da5f9739177d7 |
| SANs: favcrm.io, api.favcrm.io, *.api.favcrm.io | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
DNSSEC insecure
Validation of api.favcrm.io. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| io. | present | 57355 | 8 | Verified |
| favcrm.io. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Challenged, unverified
The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.
| Result | Challenged, unverified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000 |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | no-referrer |
Protected resource metadata
| Retrieved | No |
|---|---|
| Problem | no_resource_metadata |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://api.favcrm.io/mcp | Verified | 200 | |
| http (plaintext) | http://api.favcrm.io/mcp | HTTPS enforced | 301 | https://api.favcrm.io/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
list_staff ~29
List staff/team members in the business.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | — | Max results (default 20) |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_subscriptions ~52
List member subscriptions. Filter by status to find active, cancelled, or past-due subscriptions.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | — | Max results (default 20) |
| status | string | — | Filter by subscription status |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_survey_invitations ~48
List survey invitation history without exposing token hashes or old invitation tokens.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | — | Max invitations (default 50) |
| surveyId | string | yes | Survey ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_survey_workflows ~29
List automation workflows attached to a survey.
| Name | Type | Req | Description |
|---|---|---|---|
| surveyId | string | yes | Survey ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_surveys ~53
List surveys with optional status/search filters.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | — | Max results (default 20) |
| search | string | — | Search survey title or description |
| status | string | — | Filter by survey status |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_tags ~27
List all available tags for the merchant.
| Name | Type | Req | Description |
|---|---|---|---|
| search | string | — | Search tags by name |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_tasks ~74
List tasks with optional status, assignee, and account filters.
| Name | Type | Req | Description |
|---|---|---|---|
| accountId | string | — | Filter by related CRM account |
| assigneeId | string | — | Filter by assignee company_members.id |
| limit | number | — | Max results (default 20) |
| status | string | — | Filter by task status |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_templates ~61
List the company's WhatsApp message templates with their Meta approval status (PENDING / APPROVED / REJECTED). Check this to see which templates are approved before referencing one in a campaign.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max templates to return (default 20) |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_tickets ~82
List support tickets with optional filters.
| Name | Type | Req | Description |
|---|---|---|---|
| accountId | string | — | Filter by CRM account ID |
| category | string | — | Filter by category |
| limit | number | — | Max results (default 20) |
| priority | string | — | Filter by priority |
| search | string | — | Search by subject |
| status | string | — | Filter by status |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
list_tiers ~19
List all membership tiers with member counts and stats.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
mark_deal_lost ~46
Mark a CRM deal as lost. Requires a lost reason.
| Name | Type | Req | Description |
|---|---|---|---|
| dealId | string | yes | The deal ID |
| reason | string | yes | Why the deal was lost |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
mark_deal_won ~48
Mark a CRM deal as won and set close date.
| Name | Type | Req | Description |
|---|---|---|---|
| closingDate | string | — | Optional close date (YYYY-MM-DD) |
| dealId | string | yes | The deal ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
mark_invoice_sent ~50
Mark an invoice as sent to the customer (transitions DRAFT → OPEN). Use after delivering the invoice via email or share link. Idempotent.
| Name | Type | Req | Description |
|---|---|---|---|
| invoiceId | string | yes | Invoice ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
mark_no_show ~38
Mark a booking as no-show when the customer did not attend.
| Name | Type | Req | Description |
|---|---|---|---|
| bookingId | string | yes | The booking ID to mark as no-show |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
pause_subscription ~41
Pause an active subscription (status → past_due, no further auto-renew). Use resume_subscription to reactivate.
| Name | Type | Req | Description |
|---|---|---|---|
| subscriptionId | string | yes | Subscription ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
post_workroom_message ~132
Post an internal message from an AI colleague into a Workroom thread. Use this to report findings, ask the owner for approval, or share source links after reading CRM/Inbox data. This does not send anything to customers.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | yes | AI colleague ID that is a participant in the thread |
| content | string | yes | Message to show in Workroom. Markdown is allowed. |
| metadata | object | — | Optional generic metadata, e.g. {sourceRefs:[{type:"inbox_conversation",id:"..."}]} |
| threadId | string | yes | Workroom thread ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
preview_customer_import ~72
Preview 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.
| Name | Type | Req | Description |
|---|---|---|---|
| filename | string | — | Original filename for audit |
| rows | array | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
preview_segment_count ~44
Preview how many customers would match dynamic segment criteria before creating or updating a segment.
| Name | Type | Req | Description |
|---|---|---|---|
| criteria | — | — | Dynamic criteria to preview. Omit or null to count all active customers. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
query_company_knowledge ~90
Search this company's reviewed knowledge base and return grounded snippets with source document IDs. Use for merchant policies, FAQs, pricing notes, brand guidance, and other uploaded references.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Maximum matching snippets (default 5) |
| maxSnippetChars | integer | — | Maximum characters per snippet (default 600) |
| query | string | yes | Question or keywords to search for in company knowledge |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
query_favcrm_platform ~92
Search FavCRM MCP tools, enabled skills, and feature areas for how to use the platform. Use before guessing tool names or JSON arguments.
| Name | Type | Req | Description |
|---|---|---|---|
| area | string | — | Restrict search area (default all) |
| limit | integer | — | Maximum results (default 8) |
| query | string | yes | Plain-language capability question, e.g. "create a booking" or "send a campaign safely" |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
record_invoice_payment ~114
Record a manual payment against an invoice (cash, bank transfer, cheque, card terminal). Updates invoice status to PARTIAL or PAID based on the running total.
| Name | Type | Req | Description |
|---|---|---|---|
| amount | string | yes | Payment amount as decimal string, e.g. "100.00" |
| invoiceId | string | yes | Invoice ID to record payment against |
| method | string | yes | Payment method |
| note | string | — | Internal note about this payment |
| reference | string | — | External reference (cheque number, bank transfer ID) |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
register_organisation_request ~172
Step 1 of agentic signup. Sends a 6-digit verification code to the email. After the user reads the code, call register_organisation_verify with it to finish and receive an API key. Use this when a user wants to create a new FavCRM workspace from inside an MCP client.
| Name | Type | Req | Description |
|---|---|---|---|
| country | string | — | ISO 3166-1 alpha-2 country code (HK, US, GB, ...) |
| string | yes | Owner email — receives a 6-digit code (10 min TTL) | |
| industry | string | — | Vertical — drives default templates |
| organisationName | string | yes | Business / brand name (used as the first company name too) |
| timezone | string | — | IANA timezone (e.g. Asia/Hong_Kong); falls back to country default |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
register_organisation_verify ~86
Step 2 of agentic signup. Confirms the 6-digit code and creates the workspace. Returns an API key the agent should set as Authorization: Bearer <apiKey> for all subsequent FavCRM MCP calls in this session.
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | 6-digit code from the verification email |
| requestId | string | yes | From register_organisation_request |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
remove_post_block ~55
Remove the block at the given index (0-based). All subsequent blocks shift up by one.
| Name | Type | Req | Description |
|---|---|---|---|
| index | integer | yes | 0-based index of the block to remove |
| postId | string | yes | The post ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
reorder_post_blocks ~66
Reorder blocks by passing block IDs in the desired order. The id list must contain every existing block id exactly once.
| Name | Type | Req | Description |
|---|---|---|---|
| orderedBlockIds | array | yes | Block IDs in the desired order; must match the existing set exactly |
| postId | string | yes | The post ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
reorder_post_type_fields ~61
Reorder fields on a post type. Pass field IDs in the desired display order; sortOrder is updated to match.
| Name | Type | Req | Description |
|---|---|---|---|
| orderedFieldIds | array | yes | Field IDs in the desired order |
| postTypeId | string | yes | Post type ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
replace_post_block ~71
Replace a single block at the given index (0-based). Avoids fetching the full post and re-sending all blocks via update_post.
| Name | Type | Req | Description |
|---|---|---|---|
| block | — | yes | Replacement block |
| index | integer | yes | 0-based index of the block to replace |
| postId | string | yes | The post ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
report_agent_issue ~264
Report a FavCRM platform issue when an agent finds a missing MCP path, tool failure, confusing schema, CLI/docs issue, or SDK fallback. Include logs, AI analysis, references, and clarification questions so the platform team can follow up.
| Name | Type | Req | Description |
|---|---|---|---|
| actualBehavior | string | yes | What actually happened |
| aiAnalysis | string | yes | Agent analysis of likely root cause and impact |
| area | string | yes | Issue area |
| clarificationQuestions | array | — | Questions the platform team should ask the agent/user to resolve ambiguity |
| environment | object | — | Runtime context such as MCP URL, CLI version, token type, client, sandbox, model, OS |
| expectedBehavior | string | yes | What the agent or user expected to happen |
| logs | array | — | Relevant error messages, command output, or stack traces |
| references | array | — | Source links, file paths, docs, screenshots, or IDs that support the report |
| severity | string | yes | Impact level |
| stepsTried | array | yes | Concrete steps the agent tried before reporting |
| title | string | yes | Short issue title |
| toolCalls | array | — | Relevant MCP/CLI/SDK calls, arguments, and outcomes |
| workaround | string | — | Temporary workaround used, if any |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
request_send_approval ~136
Create a merchant-owned Workroom approval request for a customer-facing send. The agent must not call send_message, send_whatsapp_message, send_test_campaign, or send_campaign directly.
| Name | Type | Req | Description |
|---|---|---|---|
| actionType | string | yes | The customer-facing action to execute only after merchant approval |
| agentId | string | yes | AI colleague ID that is a participant in the thread |
| payload | object | yes | Exact tool payload to execute if the merchant approves |
| summary | string | yes | Human-readable draft/recipient/campaign summary shown above the approval buttons |
| threadId | string | yes | Workroom thread ID where the approval button should appear |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_campaign ~24
Restore a previously deleted campaign.
| Name | Type | Req | Description |
|---|---|---|---|
| campaignId | string | yes | Campaign ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_category ~26
Restore a previously deleted CMS post category.
| Name | Type | Req | Description |
|---|---|---|---|
| categoryId | string | yes | Category ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_invoice ~28
Restore a previously deleted DRAFT invoice.
| Name | Type | Req | Description |
|---|---|---|---|
| invoiceId | string | yes | Invoice ID to restore |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_knowledge_document ~28
Restore a previously deleted knowledge document.
| Name | Type | Req | Description |
|---|---|---|---|
| documentId | string | yes | Knowledge document ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_post ~26
Restore a previously deleted CMS post.
| Name | Type | Req | Description |
|---|---|---|---|
| postId | string | yes | The post ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_post_type ~29
Restore a previously deleted custom post type.
| Name | Type | Req | Description |
|---|---|---|---|
| postTypeId | string | yes | Post type ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_post_type_field ~43
Restore a previously deleted field on a post type schema.
| Name | Type | Req | Description |
|---|---|---|---|
| fieldId | string | yes | Field ID |
| postTypeId | string | yes | Post type ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_promotion ~25
Restore a previously deleted promotion.
| Name | Type | Req | Description |
|---|---|---|---|
| promotionId | string | yes | Promotion ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
restore_service_package ~31
Restore a previously deleted service package by ID.
| Name | Type | Req | Description |
|---|---|---|---|
| packageId | string | yes | Service package ID to restore |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
resume_subscription ~26
Resume a paused subscription back to active.
| Name | Type | Req | Description |
|---|---|---|---|
| subscriptionId | string | yes | Subscription ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
revert_audit_action ~63
Revert an audited action by restoring the captured before snapshot. Only works for allowlisted target tables with full before/after audit snapshots.
| Name | Type | Req | Description |
|---|---|---|---|
| auditLogId | string | yes | Audit log ID to revert |
| reason | string | — | Reason for reverting this action |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
scrape_knowledge_url ~88
Fetch a URL's content into the knowledge base. Server crawls the URL, stores the response body in R2, returns the new document ID. Failures store the row with status='failed'. Use for adding marketing pages, FAQ docs, or external references the agent should be aware of.
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | URL to fetch (must be https / http and publicly reachable) |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
search_audit_logs ~77
Search audit logs by free text across action, resource, resource ID, changes JSON, and metadata JSON.
| Name | Type | Req | Description |
|---|---|---|---|
| createdAfter | string | — | ISO timestamp lower bound |
| createdBefore | string | — | ISO timestamp upper bound |
| limit | integer | — | Maximum rows to return |
| query | string | yes | Text to search for |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
search_crm ~46
Search across CRM accounts and contacts by name, email, or phone.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | — | Max per entity (default 10) |
| query | string | yes | Search string |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
search_members ~320
Search and filter members/accounts. Supports text search, date ranges, booking/activity history, membership tier, tags, and more. Use lastBookingBefore/inactiveDays to find inactive members.
| Name | Type | Req | Description |
|---|---|---|---|
| createdAfter | string | — | ISO date — accounts created after this date |
| createdBefore | string | — | ISO date — accounts created before this date |
| hasBooking | boolean | — | Filter to members with/without any booking |
| hasMembership | boolean | — | Filter to members with active membership |
| inactiveDays | number | — | Members with no activity in the last N days |
| lastActivityAfter | string | — | ISO date — members with activity after this date |
| lastActivityBefore | string | — | ISO date — members with no activity since this date |
| lastBookingAfter | string | — | ISO date — members who have a booking after this date |
| lastBookingBefore | string | — | ISO date — members whose last booking is before this date (or have no bookings) |
| lifeStage | string | — | Filter by life stage |
| limit | number | — | Max results (default 20) |
| membershipStatus | string | — | Filter by membership status |
| order | string | — | Sort order |
| search | string | — | Name, email, or phone to search |
| sort | string | — | Sort column: name, email, or createdAt |
| source | string | — | Filter by account source |
| tagIds | array | — | Filter by tag IDs |
| tierId | string | — | Filter by membership tier ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
search_tools ~144
Search the available FavCRM tool catalog for relevant operations. Use this when the curated direct tool list does not contain the operation you need.
| Name | Type | Req | Description |
|---|---|---|---|
| includeInputSchema | boolean | — | Include full JSON input schemas for returned tools. Defaults to false to keep context small. |
| limit | integer | — | Maximum results (default 8, max 20) |
| query | string | — | Plain-language tool search, e.g. "delete a segment" or "set custom field values" |
| scope | string | — | Optional exact scope filter, e.g. contacts, customer_segments, invoices |
| write | boolean | — | Filter to write tools (true) or read-only tools (false) |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
set_custom_field_values ~65
Set or clear custom field values for a CRM entity. Values are stored as strings; pass null to clear a value.
| Name | Type | Req | Description |
|---|---|---|---|
| entityId | string | yes | Entity ID |
| entityType | string | yes | Entity type |
| values | array | yes | Values to upsert |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
set_primary_contact ~43
Set a contact as the primary contact for its CRM account and demote other contacts on that account.
| Name | Type | Req | Description |
|---|---|---|---|
| contactId | string | yes | The contact ID to make primary |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
set_resource_availability ~134
Add an availability window for a resource. Use day-of-week + recurring=true for weekly schedules, or a specific date for one-off blocks.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | — | YYYY-MM-DD for a specific date instead of dayOfWeek |
| dayOfWeek | string | — | Day of week (0=Sun..6=Sat) |
| endTime | string | yes | HH:MM (24h) |
| isRecurring | boolean | — | Default true |
| resourceId | string | yes | Resource ID |
| startTime | string | yes | HH:MM (24h) |
| type | string | — | Default available |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
set_segment_members ~57
Replace the members of a STATIC customer segment with the given account IDs. The segment is converted to STATIC.
| Name | Type | Req | Description |
|---|---|---|---|
| accountIds | array | yes | CRM account IDs to set as segment members |
| segmentId | string | yes | The segment ID |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.
set_staff_availability ~142
Add 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.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | — | YYYY-MM-DD for a specific date instead of dayOfWeek |
| dayOfWeek | string | — | Day of week (0=Sun..6=Sat) |
| endTime | string | yes | HH:MM (24h) |
| isRecurring | boolean | — | Default true |
| memberId | string | yes | companyMembers.id of the staff |
| startTime | string | yes | HH:MM (24h) |
| type | string | — | Default available |
| Name | Type | Req | Description |
|---|---|---|---|
| data | — | yes | Tool result payload — shape varies per tool, see the tool description |
| renderType | string | yes | UI rendering hint for the result |
| summary | string | yes | One-line human-readable summary of the action |
No examples provided.