New Your team’s decisions, in one playbook every coding agent works from. Never answer your agent twice

walletconnect

Pair and use an EVM and/or Solana wallet via WalletConnect v2. No authentication required — available to every user (including unauthenticated/anonymous). Non-custodial: the server never holds keys and the user approves every signature/transaction in their own wallet. Pairing proposal is controll...

SERVER1inch MCP SOURCEhttps://api.1inch.com/mcp/protocol
Critical RISK CLASS
Category Destructive
Parameters 101 required
Recommended Hiddensee the rule below
Registry record Grade F, identity unverified Pull the record →

This record as markdown: /tools/com-1inch-business-mcp/walletconnect.md

What walletconnect does on 1inch MCP

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

ParameterTypeRequiredDescription
tx object — Required when action is "send_transaction". EVM or Solana shape — see `tx` field descriptions. Omit for connect, status, sign, disconnect.
action string Yes Required. One of: connect (start pairing), status (session info), sign (EVM + Solana WC methods), send_transaction (EVM eth_sendTransaction or Solana solana_sig
method string — Required when action is "sign". EVM: personal_sign | eth_signTypedData_v4. Solana: solana_signMessage | solana_signTransaction. Omit for connect, status, send_t
params array — Required when action is "sign": exactly two items. personal_sign: [message, 0xAddress]. eth_signTypedData_v4: [0xSigner, typedDataJsonString]. solana_signMessag
address string — Optional; only with action "accept_terms". EVM address that signs the Terms-of-Use acceptance; must belong to the active WalletConnect session. When omitted, th
chainId integer — Optional; only when action is "sign" and method is personal_sign (EVM numeric chain id). Must be omitted for eth_signTypedData_v4, Solana methods, send_transact
pairingTarget string — Optional; only with action "connect". What to advertise in the WalletConnect proposal: "eth" (eip155 only, default), "solana" only, or "both". Many mobile walle
solanaChainId string — Optional; only when action is "sign" and method is solana_signMessage or solana_signTransaction. CAIP-2 string (e.g. solana:5eykt4…). When omitted, the server u
sessionTtlDays integer — Optional; only with action "connect". How long to persist this WalletConnect client state in Redis (days). Server clamps to [1, WALLETCONNECT_SESSION_TTL_DAYS_M
walletSessionToken string — Optional durable token for ANONYMOUS (unauthenticated) sessions. `connect` mints a fresh token; store it and pass it back on status/sign/send_transaction/accept

Parameters from the server's own tool schema.

Why walletconnect is rated Critical

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

Risk signalsHigh parameter count (17 properties) · Bulk/mass operation — affects multiple targets

Questions about walletconnect

What does the walletconnect tool do? +

Pair and use an EVM and/or Solana wallet via WalletConnect v2. No authentication required — available to every user (including unauthenticated/anonymous). Non-custodial: the server never holds keys and the user approves every signature/transaction in their own wallet. Pairing proposal is controlled per request via optional pairingTarget on action: "connect": eth (default, eip155 only), solana, or both. Many mobile wallets fail if eip155 and solana are proposed together; prefer eth or solana unless the user needs both in one session. Every call must include action (string). Connect QR (critical for assistants): On action: "connect", successful responses return (1) an MCP type: "image" PNG of the pairing QR (render this even if the host has no resources/read), then (2) optional resource_link, then (3) text JSON with pairingQrResourceUri, presentation, nextSteps, url, optional mobileDeeplinks, etc. Desktop / scan UX: show the image content block first. Mobile / no-camera: follow nextSteps; when present, mobileDeeplinks lists HTTPS url (+ nativeUrl) per curated WalletConnect wallet. Raw wc: (url / walletConnectLinkForUser) remains fallback. Avoid calling connect again while pairing is still in progress unless the user must reset — pass walletSessionToken to resume the same pairing after MCP session rotation. Flow: (1) connect as above. (2) User approves in the wallet (EVM only, Solana only, or both). (3) status until kind is session — optional evm / solana blocks; address/chains remain legacy EVM when EVM is connected. (4) sign / send_transaction or swap execute=true (swap execute remains EVM unless extended elsewhere). kind: "pending" on status is success — keep polling. Actions (exact JSON shapes): - connect — { "action": "connect", "sessionTtlDays"?: number, "pairingTarget"?: "eth" | "solana" | "both", "walletSessionToken"?: string } - status — { "action": "status" } (anonymous sessions include a terms block showing the connected wallet's 1inch Terms-of-Use acceptance state) - sign — EVM: personal_sign / eth_signTypedData_v4. Solana: solana_signMessage / solana_signTransaction (see schema fields params, chainId, solanaChainId). - send_transaction — EVM: tx.to, numeric tx.chainId. Solana: string tx.chainId (solana:...), tx.serializedTransaction (base64). Set tx.namespace when both WC namespaces are active and the payload is ambiguous. - accept_terms — { "action": "accept_terms", "address"?: "0x…" }. When the user has not accepted yet: write to the user that they must sign the 1inch Terms of Use in their wallet (one-time, gas-free personal_sign), then immediately call this action in the same turn so the signature prompt appears. You trigger the signing — do not only instruct them to sign. Required before anonymous aqua create_position / close_position. Idempotent — already-accepted wallets return immediately without a prompt. - disconnect — { "action": "disconnect" } Anonymous durable sessions: for unauthenticated callers, pairing connect (QR) returns a walletSessionToken. Store it and pass it back as walletSessionToken on later status / sign / send_transaction / accept_terms / disconnect and on a later connect to resume the same pairing after MCP session rotation. A tokenless connect that resumes an already-approved session does not mint a new token — within this MCP session, status / sign still work via anon:{sessionId}. Authenticated callers ignore the token (their WC session is scoped by org/app). Non-custodial relay; no authentication required. It is categorised as a Destructive tool in the 1inch MCP MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

What parameters does walletconnect accept? +

walletconnect accepts 10 parameters: tx, action, method, params, address, chainId, pairingTarget, solanaChainId, sessionTtlDays, walletSessionToken. Required: action. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on walletconnect? +

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

What risk level is walletconnect? +

walletconnect 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 walletconnect? +

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

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

walletconnect is provided by the 1inch MCP server (https://api.1inch.com/mcp/protocol). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

More on 1inch, and thousands of servers like it.

// THE MCP REGISTRY

PolicyLayer tracks 44,603 MCP servers and 515,000+ tools.

Every server has a live record: who publishes it, whether it answers without auth, its risk grade, every tool classified, the recommended policy. This page is one line of 1inch's. Pull the full record:

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

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

Message sent.

We'll get back to you soon.