# get_contact

Fetch a single contact by ID.

Agent View of the PolicyLayer registry record for `get_contact`. HTML page: https://policylayer.com/tools/io-favcrm-favcrm/get-contact

## Facts

- Tool: `get_contact`
- 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: 1 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `contactId` | string | yes | The contact ID |

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": "get_contact",
    "arguments": {
      "contactId": "<contactId>"
    }
  }
}
```

## Why get_contact is rated Low

This tool performs a read-only query to retrieve contact data. It does not create, modify, delete, or execute any operations—it simply fetches an existing record by identifier. The blast radius of misuse is minimal, limited to potential exposure of contact information already in the system. This is classified as a Read operation with low severity.

From the tool's own definition: "The tool is named 'get_contact' and described as 'Fetch a single contact by ID', which is a straightforward retrieval operation with no modification or side effects."

## Use case

AI agents call get_contact 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": {
    "get_contact": {}
  }
}
```

## 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
