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