Skip to content
VS Code

three.ws Portfolio for VS Code

io.github.nirholas/portfolio-mcp

An agent's trading state — portfolio value, PnL, live balances, trade feed, and signed transfers.

client:VS Code transport:stdio runtime:npm

Install three.ws Portfolio in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "three-ws-base",
      "description": "THREE_WS_BASE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "three-ws-timeout-ms",
      "description": "THREE_WS_TIMEOUT_MS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "three-ws-session",
      "description": "THREE_WS_SESSION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "solana-rpc-url",
      "description": "SOLANA_RPC_URL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "solana-secret-key",
      "description": "SOLANA_SECRET_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "max-sol-per-tx",
      "description": "MAX_SOL_PER_TX",
      "password": true
    },
    {
      "type": "promptString",
      "id": "recipient-allowlist",
      "description": "RECIPIENT_ALLOWLIST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "require-confirm",
      "description": "REQUIRE_CONFIRM",
      "password": true
    }
  ],
  "servers": {
    "portfolio-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@three-ws/portfolio-mcp"
      ],
      "env": {
        "THREE_WS_BASE": "${input:three-ws-base}",
        "THREE_WS_TIMEOUT_MS": "${input:three-ws-timeout-ms}",
        "THREE_WS_SESSION": "${input:three-ws-session}",
        "SOLANA_RPC_URL": "${input:solana-rpc-url}",
        "SOLANA_SECRET_KEY": "${input:solana-secret-key}",
        "MAX_SOL_PER_TX": "${input:max-sol-per-tx}",
        "RECIPIENT_ALLOWLIST": "${input:recipient-allowlist}",
        "REQUIRE_CONFIRM": "${input:require-confirm}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

three.ws Portfolio in other clients