Medium Risk

log_message

Save a conversation message to persistent memory. Call this for each user/assistant exchange.

How to control log_message ↓

What log_message does on Claude Memory

AI agents use log_message to create or update resources in Claude Memory — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Claude Memory environment.

Medium Risk

Why log_message needs a policy

This tool creates and stores conversation data in a persistent database. While it modifies state, it is not destructive (messages can be deleted via the 'forget' tool), not executable (it doesn't run code or commands), and not financial.

From the tool's definition The tool 'log_message' with description 'Save a conversation message to persistent memory' performs a create operation that stores data in Supabase.

Documented attack patterns abuse exactly the kind of access log_message gives an agent:

How to control log_message

PolicyLayer is an MCP gateway — it sits between your AI agents and Claude Memory, and nothing reaches the server without passing your rules. This is the rule we recommend for log_message:

policy.json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "log_message": {
      "limits": [
        {
          "counter": "log_message_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}

log_message stays usable, but capped — an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.

  1. Create a free account and register Claude Memory — nothing to install.
  2. Add this policy — paste it, or build it visually.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
LIMIT THIS TOOL →

Free to start. No card required.

Related tools and policies

Go deeper

Questions about log_message

What does the log_message tool do? +

Save a conversation message to persistent memory. Call this for each user/assistant exchange. It is categorised as a Write tool in the Claude Memory MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on log_message? +

Register the Claude Memory MCP server in PolicyLayer and add a rule for log_message: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Claude Memory. Nothing to install.

What risk level is log_message? +

log_message is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit log_message? +

Yes. Add a rate_limit block to the log_message rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block log_message completely? +

Set action: deny in the PolicyLayer policy for log_message. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides log_message? +

log_message is provided by the Claude Memory MCP server (jordanl61/claude-memory). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every Claude Memory tool call.

Start from Claude Memory, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.

Free to start. No card required.

7 Claude Memory tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.