vault_login
ZERO-EXPOSURE browser login: fill a form from your encrypted vault WITHOUT the plaintext ever entering your context. vault_fields maps each form @eN ref to a vault entry (or 'entry:field' for a multi-field entry), e.g. {'@e3':'github:username','@e4':'github:password'}. The gateway verifies you ow...
This record as markdown: /tools/com-wingmanprotocol-agent-gateway/vault-login.md
What vault_login does on Gateway
AI agents invoke vault_login to trigger actions in Gateway. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.
| Parameter | Type | Required | Description |
|---|---|---|---|
handle | string | Yes | your registered handle (owns the session) |
browser_id | string | Yes | from browse_open |
submit_ref | string | — | optional @eN ref to click after filling |
vault_fields | object | Yes | {'@eN ref': 'entry_name' | 'entry_name:field', ...} |
Parameters from the server's own tool schema.
Why vault_login is rated High
This tool performs a browser action (filling and submitting a login form) using decrypted credentials from an encrypted vault. It triggers an external operation (authenticating to a third-party service) whose effects depend on the supplied arguments.
From the tool's definition fill a form from your encrypted vault WITHOUT the plaintext ever entering your context... decrypts server-side, fills, and returns only {ok,url}. Requires your secret (Bearer).
Attacks that exploit this kind of access
The rule that runs vault_login safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Gateway, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For vault_login, this is the rule to start with:
vault_login stays usable, but rate-capped: a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Gateway, apply this rule, and every vault_login call is checked against it from then on.
Questions about vault_login
ZERO-EXPOSURE browser login: fill a form from your encrypted vault WITHOUT the plaintext ever entering your context. vault_fields maps each form @eN ref to a vault entry (or 'entry:field' for a multi-field entry), e.g. {'@e3':'github:username','@e4':'github:password'}. The gateway verifies you own the browser session, decrypts server-side, fills, and returns only {ok,url}. Requires your secret (Bearer). It is categorised as a Execute tool in the Gateway MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
vault_login accepts 4 parameters: handle, browser_id, submit_ref, vault_fields. Required: handle, browser_id, vault_fields. The full parameter table on this page comes from the server's own tool schema.
Register the Gateway MCP server in PolicyLayer and add a rule for vault_login: 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 Gateway. Nothing to install.
vault_login is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the vault_login 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 vault_login. 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.
vault_login is provided by the Gateway MCP server (https://wingmanprotocol.com/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Gateway, and thousands of servers like it.
Across the catalogue