setup_connector
Connects a new exchange or wallet by storing read-only credentials validated against the platform API.
Instructions
Creates a new account by writing READ-ONLY credentials to the OS keychain. Use when the user asks: 'add a Bybit account', 'connect Binance', 'connect my MetaMask wallet', 'set up Polymarket', 'connect my Solana wallet', 'add new exchange'. BEHAVIOR CONTRACT FOR YOU (the LLM): - After this tool succeeds, confirm ONLY the account label and account_id back to the user. - NEVER echo, log, paraphrase, or repeat the credential values (apiKey, apiSecret, etherscanApiKey) in your response. - If the user pastes credentials inline in chat, suggest they use the Settings UI (render_settings tool) form instead — the form keeps secrets out of the conversation transcript. Credentials are validated against the upstream API before they're persisted; if validation fails, nothing is written. Storage: OS keychain (macOS Keychain / Linux Secret Service / Windows Credential Vault) via @napi-rs/keyring. Same path as the CLI setup flow. All five connectors use READ-ONLY credentials by design (Bybit 'Read' only, Binance 'Enable Reading' only, Etherscan is a public-data rate-limit token, Polymarket proxy wallet is already public, Solana addresses are public on-chain identifiers). Inputs (one of bybit / binance / metamask / polymarket / solana required): - connector: 'bybit' | 'binance' | 'metamask' | 'polymarket' | 'solana' - bybit: { apiKey, apiSecret, accountType: 'UNIFIED'|'CONTRACT'|'SPOT'|'FUND' (primary, also the account ID), accountTypes?: array of additional types to fan out across (e.g. ['FUND'] alongside UNIFIED so funding-wallet balances are tracked too) } - binance: { apiKey, apiSecret, includeFutures (optional bool, default false), recvWindow (optional ms) } - metamask: { address, etherscanApiKey, chainIds (number[]), trackCommonTokens (bool), hasEtherscanPro (bool) } - polymarket: { proxyWallet (0x...), sizeThreshold (default 0.01) } - solana: { address (base58), rpcUrl (optional premium RPC), dustThresholdUsd (optional, default 0.5) }
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| connector | Yes | Which connector to set up. Provide the matching credential object below (e.g. connector='bybit' requires the 'bybit' object). All credentials are READ-ONLY by design. | |
| bybit | No | Bybit credentials (required when connector='bybit'). Read-only API key/secret + account type. | |
| binance | No | Binance credentials (required when connector='binance'). Read-only API key/secret. | |
| metamask | No | MetaMask/EVM config (required when connector='metamask'). Public address + Etherscan rate-limit key + chains. | |
| polymarket | No | Polymarket config (required when connector='polymarket'). Public proxy wallet address; no secret. | |
| solana | No | Solana config (required when connector='solana'). Public base58 address; no secret. |