# preview_customer_import

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.

Agent View of the PolicyLayer registry record for `preview_customer_import`. HTML page: https://policylayer.com/tools/io-favcrm-favcrm/preview-customer-import

## Facts

- Tool: `preview_customer_import`
- Server: FavCRM (`https://api.favcrm.io/mcp`) — https://policylayer.com/tools/io-favcrm-favcrm.md
- Homepage: https://github.com/favcrm/mcp
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server auth posture: open
- Server CORS policy: *
- Server rate-limited: no
- Parameters: 2 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `rows` | array | yes |  |
| `filename` | string | no | Original filename for audit |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "preview_customer_import",
    "arguments": {
      "rows": []
    }
  }
}
```

## Why preview_customer_import is rated Low

The tool only previews what would happen during a bulk import, showing proposed actions without committing them. No data is created, modified, or deleted. It is a read/analysis operation with no side effects, similar to a dry-run or diff operation.

From the tool's own definition: "'Preview a bulk customer import' and 'shows create vs update actions plus points/stamps/credit deltas' — this is a dry-run/preview operation that does not apply changes. Explicit instruction to 'Use commit_customer_import with the returned sessionId to apply.'"

Risk signals: Accepts file system path (filename) · High parameter count (23 properties)

## Use case

AI agents call preview_customer_import to retrieve information from FavCRM without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches FavCRM:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "preview_customer_import": {}
  }
}
```

## Other tools on FavCRM (219)

- `cancel_booking` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/cancel-booking.md
- `delete_account` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-account.md
- `delete_campaign` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-campaign.md
- `delete_category` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-category.md
- `delete_contact` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-contact.md
- `delete_custom_field` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-custom-field.md
- `delete_deal` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-deal.md
- `delete_invoice` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-invoice.md
- `delete_knowledge_document` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-knowledge-document.md
- `delete_post` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-post.md
- `delete_post_type` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-post-type.md
- `delete_post_type_field` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-post-type-field.md
- `delete_promotion` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-promotion.md
- `delete_segment` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-segment.md
- `delete_service_package` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-service-package.md
- `delete_tag` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-tag.md
- `delete_task` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/delete-task.md
- `remove_post_block` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/remove-post-block.md
- `void_invoice` — Destructive — https://policylayer.com/tools/io-favcrm-favcrm/void-invoice.md
- `execute_tool` — Execute — https://policylayer.com/tools/io-favcrm-favcrm/execute-tool.md
- `switch_company` — Execute — https://policylayer.com/tools/io-favcrm-favcrm/switch-company.md
- `cancel_subscription` — Financial — https://policylayer.com/tools/io-favcrm-favcrm/cancel-subscription.md
- `create_plan_upgrade_link` — Financial — https://policylayer.com/tools/io-favcrm-favcrm/create-plan-upgrade-link.md
- `create_subscription` — Financial — https://policylayer.com/tools/io-favcrm-favcrm/create-subscription.md
- `enrol_membership` — Financial — https://policylayer.com/tools/io-favcrm-favcrm/enrol-membership.md
- `record_invoice_payment` — Financial — https://policylayer.com/tools/io-favcrm-favcrm/record-invoice-payment.md
- `check_plan_operation` — Read — https://policylayer.com/tools/io-favcrm-favcrm/check-plan-operation.md
- `get_attachment_text` — Read — https://policylayer.com/tools/io-favcrm-favcrm/get-attachment-text.md
- `get_audit_log` — Read — https://policylayer.com/tools/io-favcrm-favcrm/get-audit-log.md
- `get_available_slots` — Read — https://policylayer.com/tools/io-favcrm-favcrm/get-available-slots.md
- …and 189 more: https://policylayer.com/tools/io-favcrm-favcrm.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-favcrm-favcrm · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-favcrm-favcrm
