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...
This record as markdown: /tools/io-github-szhygulin-vaultpilot-mcp/remove-contact.md
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.
| Parameter | Type | Required | Description |
|---|---|---|---|
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 is rated Critical
The tool irreversibly deletes contact labels and metadata from the user's contact store. While the scope is limited to contact management rather than crypto assets themselves, the deletion is permanent and cannot be undone, making it Destructive rather than Write. The Ledger-signed nature of some entries and potential blast radius of mistakenly removing contacts across multiple chains elevates severity to high.
From the tool's definition Tool description explicitly uses 'Remove' in the name and states it 'removes the label from EVERY chain', 'the label can survive on other chains', and 'The unsigned metadata row (notes / tags) is dropped'.
Risk signalsBulk/mass operation — affects multiple targets
Attacks that exploit this kind of access
The rule that runs remove_contact safely
PolicyLayer is an MCP gateway: it sits between your AI agents and VaultPilot MCP, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For remove_contact, this is the rule to start with:
remove_contact is removed from the agent's tool list entirely, so the agent never calls it. The rest of the server keeps working.
The button opens the PolicyLayer dashboard: create your workspace, connect VaultPilot MCP, apply this rule, and every remove_contact call is checked against it from then on.
Questions about 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 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.
remove_contact accepts 2 parameters: chain, label. Required: label. The full parameter table on this page comes from the server's own tool schema.
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.
remove_contact is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.
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.
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.
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.
More on VaultPilot, and thousands of servers like it.
Across the catalogue