list_contacts
Return the joined per-label view across chains. Each row contains the label, addresses keyed by chain, optional notes / tags, the earliest addedAt across the joined entries, and an optional unsigned: true flag (issue #428) when at least one chain entry is unsigned (in-memory only). Strict-fail on...
This record as markdown: /tools/io-github-szhygulin-vaultpilot-mcp/list-contacts.md
What list_contacts does on VaultPilot MCP
AI agents call list_contacts to retrieve information from VaultPilot MCP without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
| Parameter | Type | Required | Description |
|---|---|---|---|
chain | string | — | If specified, only verifies + returns entries for that chain. Otherwise returns the joined per-label view across all chains with at least one verified entry. |
label | string | — | Filter to a specific label. Useful for 'show me what we know about Mom' single-record reads. |
Parameters from the server's own tool schema.
Why list_contacts is rated Low
This is a read-only operation that retrieves and presents contact information. While the context involves cryptocurrency and DeFi (which increases potential blast radius if abused), the tool itself performs no financial transactions, code execution, or data modification. The strict-fail error handling on tamper detection is a safety feature, not an expansion of capability.
From the tool's definition Tool name is 'list_contacts' and description states it 'Return[s] the joined per-label view across chains' and retrieves contact label, addresses, notes, tags, and timestamps.
Risk signalsBulk/mass operation — affects multiple targets
Attacks that exploit this kind of access
The rule that runs list_contacts 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 list_contacts, this is the rule to start with:
list_contacts is read-only, so it stays allowed. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect VaultPilot MCP, apply this rule, and every list_contacts call is checked against it from then on.
Questions about list_contacts
Return the joined per-label view across chains. Each row contains the label, addresses keyed by chain, optional notes / tags, the earliest addedAt across the joined entries, and an optional unsigned: true flag (issue #428) when at least one chain entry is unsigned (in-memory only). Strict-fail on tamper (signed disk blobs): any signature failure / anchor mismatch / version rollback throws immediately (CONTACTS_TAMPERED / CONTACTS_ANCHOR_MISMATCH / CONTACTS_VERSION_ROLLBACK) rather than silently dropping rows — agents must surface the failure to the user. Unsigned in-memory entries are merged on top of the verified signed view; signed entries always win on a per-(label, chain) basis. In demo mode, the demo in-memory store is read directly (no signature path); all four chains supported, every row is unsigned: true. It is categorised as a Read tool in the VaultPilot MCP MCP Server, which means it retrieves data without modifying state.
list_contacts accepts 2 parameters: chain, 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 list_contacts: 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.
list_contacts is a Read tool with low risk. Read-only tools are generally safe to allow by default.
Yes. Add a rate_limit block to the list_contacts 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 list_contacts. 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.
list_contacts 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.
This server
Across the catalogue