# get_message_recording

Get call recording audio for a message

Agent View of the PolicyLayer registry record for `get_message_recording`. HTML page: https://policylayer.com/tools/ghl/get-message-recording

## Facts

- Tool: `get_message_recording`
- Server: Ghl (`ghl-mcp-server`) — https://policylayer.com/tools/ghl.md
- Install: `npx -y ghl-mcp-server`
- Homepage: git+https://github.com/mastanley13/ghl-mcp.git
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 1 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `messageId` | string | yes | The unique ID of the call message to get recording for |

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_message_recording",
    "arguments": {
      "messageId": "<messageId>"
    }
  }
}
```

## Why get_message_recording is rated Low

This tool retrieves pre-existing call recording audio data. While the classification is straightforward as a Read operation (fetching/retrieving data), the severity is elevated to medium rather than low because call recordings are sensitive personal data containing private conversations, voice identification information, and potentially confidential business discussions.

From the tool's own definition: "Tool description states it 'Get call recording audio for a message' - a retrieval operation with no side effects that queries/fetches existing data."

## Use case

AI agents call get_message_recording to retrieve information from Ghl 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 Ghl:

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

## Other tools on Ghl (252)

- `bulk_delete_social_posts` — Destructive — https://policylayer.com/tools/ghl/bulk-delete-social-posts.md
- `cancel_scheduled_email` — Destructive — https://policylayer.com/tools/ghl/cancel-scheduled-email.md
- `cancel_scheduled_message` — Destructive — https://policylayer.com/tools/ghl/cancel-scheduled-message.md
- `delete_appointment` — Destructive — https://policylayer.com/tools/ghl/delete-appointment.md
- `delete_appointment_note` — Destructive — https://policylayer.com/tools/ghl/delete-appointment-note.md
- `delete_calendar` — Destructive — https://policylayer.com/tools/ghl/delete-calendar.md
- `delete_calendar_group` — Destructive — https://policylayer.com/tools/ghl/delete-calendar-group.md
- `delete_calendar_notification` — Destructive — https://policylayer.com/tools/ghl/delete-calendar-notification.md
- `delete_calendar_resource_equipment` — Destructive — https://policylayer.com/tools/ghl/delete-calendar-resource-equipment.md
- `delete_calendar_resource_room` — Destructive — https://policylayer.com/tools/ghl/delete-calendar-resource-room.md
- `delete_contact` — Destructive — https://policylayer.com/tools/ghl/delete-contact.md
- `delete_contact_note` — Destructive — https://policylayer.com/tools/ghl/delete-contact-note.md
- `delete_contact_task` — Destructive — https://policylayer.com/tools/ghl/delete-contact-task.md
- `delete_conversation` — Destructive — https://policylayer.com/tools/ghl/delete-conversation.md
- `delete_coupon` — Destructive — https://policylayer.com/tools/ghl/delete-coupon.md
- `delete_custom_provider_integration` — Destructive — https://policylayer.com/tools/ghl/delete-custom-provider-integration.md
- `delete_email_template` — Destructive — https://policylayer.com/tools/ghl/delete-email-template.md
- `delete_invoice_template` — Destructive — https://policylayer.com/tools/ghl/delete-invoice-template.md
- `delete_location` — Destructive — https://policylayer.com/tools/ghl/delete-location.md
- `delete_location_custom_field` — Destructive — https://policylayer.com/tools/ghl/delete-location-custom-field.md
- `delete_location_custom_value` — Destructive — https://policylayer.com/tools/ghl/delete-location-custom-value.md
- `delete_location_tag` — Destructive — https://policylayer.com/tools/ghl/delete-location-tag.md
- `delete_location_template` — Destructive — https://policylayer.com/tools/ghl/delete-location-template.md
- `delete_media_file` — Destructive — https://policylayer.com/tools/ghl/delete-media-file.md
- `delete_object_record` — Destructive — https://policylayer.com/tools/ghl/delete-object-record.md
- `delete_opportunity` — Destructive — https://policylayer.com/tools/ghl/delete-opportunity.md
- `delete_social_account` — Destructive — https://policylayer.com/tools/ghl/delete-social-account.md
- `delete_social_post` — Destructive — https://policylayer.com/tools/ghl/delete-social-post.md
- `ghl_delete_association` — Destructive — https://policylayer.com/tools/ghl/ghl-delete-association.md
- `ghl_delete_custom_field` — Destructive — https://policylayer.com/tools/ghl/ghl-delete-custom-field.md
- …and 222 more: https://policylayer.com/tools/ghl.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=ghl · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/ghl
