Medium Risk

transfer_item

Transfer an item to a new owner. Call this whenever an item changes hands - given, dropped, picked up, stolen, purchased, etc. The database should always reflect current item ownership.

How to control transfer_item ↓

What transfer_item does on DMCP

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

Medium Risk

Why transfer_item needs a policy

This tool modifies game state by updating item ownership records in the database. It is a reversible write operation (ownership can be transferred back), confined entirely to a text-based RPG game state with no real-world financial or destructive consequences.

From the tool's definition Transfer an item to a new owner. Call this whenever an item changes hands - given, dropped, picked up, stolen, purchased, etc. The database should always reflect current item ownership.

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

How to control transfer_item

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

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

transfer_item 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 DMCP — 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 transfer_item

What does the transfer_item tool do? +

Transfer an item to a new owner. Call this whenever an item changes hands - given, dropped, picked up, stolen, purchased, etc. The database should always reflect current item ownership. It is categorised as a Write tool in the DMCP MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on transfer_item? +

Register the D MCP server in PolicyLayer and add a rule for transfer_item: 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 DMCP. Nothing to install.

What risk level is transfer_item? +

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

Can I rate-limit transfer_item? +

Yes. Add a rate_limit block to the transfer_item 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 transfer_item completely? +

Set action: deny in the PolicyLayer policy for transfer_item. 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 transfer_item? +

transfer_item is provided by the D MCP server (shawnrushefsky/dmcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every DMCP tool call.

Start from DMCP, 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.

204 DMCP 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.