remove_contact

Remove a labeled contact. Without chain, removes the label from EVERY chain that has it (one device interaction per chain when removing a signed entry). With chain, removes only that chain's entry — the label can survive on other chains. The unsigned metadata row (notes / tags) is dropped only wh...

Server VaultPilot MCP vaultpilot-mcp
Category Destructive
Risk class Critical
Parameters 21 required

What remove_contact does on VaultPilot MCP

AI agents call remove_contact to permanently remove resources in VaultPilot MCP — typically in cleanup and lifecycle workflows. It does its job in a single call, and there is no undo.

ParameterTypeRequiredDescription
chain string If specified, removes the label from THAT chain only. If omitted, removes the label from EVERY chain that has it (one device interaction per chain).
label string Yes Human-readable label, used to look up the contact by name in every prepare flow. Must be unique within a chain — adding the same label twice on the same chain r

Parameters from the server's own tool schema.

Why remove_contact needs a policy

An AI agent that decides to call remove_contact doesn't hesitate, doesn't double-check, and doesn't stop at one. Whatever it removes from VaultPilot MCP is gone — there is no undo for destructive operations.

Risk signalsBulk/mass operation — affects multiple targets

Questions about remove_contact

What does the remove_contact tool do? +

Remove a labeled contact. Without chain, removes the label from EVERY chain that has it (one device interaction per chain when removing a signed entry). With chain, removes only that chain's entry — the label can survive on other chains. The unsigned metadata row (notes / tags) is dropped only when no chain still references the label. Issues CONTACTS_LABEL_NOT_FOUND if neither the signed disk nor the unsigned in-memory store has the label. Issue #428: unsigned-only removals never need a Ledger; mixed labels (signed entry on one chain + unsigned on another) require pairing only for the signed-entry chain. It is categorised as a Destructive tool in the VaultPilot MCP MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

What parameters does remove_contact accept? +

remove_contact accepts 2 parameters: chain, label. Required: label. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on remove_contact? +

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

What risk level is remove_contact? +

remove_contact is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit remove_contact? +

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

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

remove_contact is provided by the VaultPilot MCP server (vaultpilot-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

// GET IN TOUCH

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

Message sent.

We'll get back to you soon.