{"_id":"@bonooo/mcp","_rev":"2-44102ed25f086b14a6c2dce2e9a277e1","name":"@bonooo/mcp","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@bonooo/mcp","version":"0.1.0","license":"UNLICENSED","_id":"@bonooo/mcp@0.1.0","maintainers":[{"name":"bonooo","email":"ofall8985@gmail.com"}],"bin":{"bonooo-mcp":"dist/cli.js"},"dist":{"shasum":"0357c976fbc9b9b8ad4dcaf259c5f09e26798539","tarball":"https://registry.npmjs.org/@bonooo/mcp/-/mcp-0.1.0.tgz","fileCount":14,"integrity":"sha512-H9CoDMVS2HQx2Egv9LtfIe4Li2uKTZmrgxkENNYJB3aP+L4JPb5rkD37ibapAVcQus5tJpIe5A1W292WjQ5B9Q==","signatures":[{"sig":"MEQCIEnvPtJnQxG6Ul8JW2LPa60zexH6sxwk2fuc1lbc7bcBAiBXG3PZ9lcJv9MsglYGcgOSa82Hk0mIwE9j7UuLx3R89w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20463},"main":"./dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"e47e1d037f9c9302622e5ea0e7a04c8248375cfb","scripts":{"build":"tsc -p tsconfig.json","start":"node dist/cli.js","selfcheck":"node scripts/selfcheck.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"bonooo","email":"ofall8985@gmail.com"},"_npmVersion":"11.17.0","description":"Bonooo MCP server — connect Claude Code / Codex and other MCP-compatible AI agents to your Bonooo account (read-only v1).","directories":{},"_nodeVersion":"26.5.1","dependencies":{"@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.0_1786792311924_0.39302666549822174","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bonooo/mcp","version":"0.1.1","description":"Bonooo MCP server — connect Claude Code / Codex and other MCP-compatible AI agents to your Bonooo account (read-only v1).","license":"UNLICENSED","main":"./dist/index.js","types":"./dist/index.d.ts","bin":{"bonooo-mcp":"dist/cli.js"},"publishConfig":{"access":"public"},"engines":{"node":">=18"},"scripts":{"build":"tsc -p tsconfig.json","prepublishOnly":"npm run build","start":"node dist/cli.js","selfcheck":"node scripts/selfcheck.mjs"},"dependencies":{"@modelcontextprotocol/sdk":"^1.29.0"},"devDependencies":{"@types/node":"^22.10.0","typescript":"^5.7.0"},"gitHead":"836405031704ca4182dfe00de3acf9fd7887f339","_id":"@bonooo/mcp@0.1.1","_nodeVersion":"26.5.1","_npmVersion":"11.17.0","dist":{"integrity":"sha512-KZ2tf2+zsg5c28/iYsA/98qvHgxG6HA5Ms/mr67I+jjj1eKuoZeFP8g9iO/BnQO8t1TJk/xzg4Qk2GNxwxT71w==","shasum":"7b6f013709dea1bb93600a30d5a75de17d9912d4","tarball":"https://registry.npmjs.org/@bonooo/mcp/-/mcp-0.1.1.tgz","fileCount":14,"unpackedSize":21410,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCmC20ZVoJn4Xz8+NZHBHbMdc+VW7EVQbRCZecAZLRVdgIgORFKLaTaIaPuK6BQCjv8feI6eCA6fB+vvK5xIKP59qU="}]},"_npmUser":{"name":"bonooo","email":"ofall8985@gmail.com"},"directories":{},"maintainers":[{"name":"bonooo","email":"ofall8985@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_0.1.1_1786796268419_0.5777225651929567"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-15T11:11:51.584Z","modified":"2026-08-15T12:17:48.688Z","0.1.0":"2026-08-15T11:11:52.075Z","0.1.1":"2026-08-15T12:17:48.557Z"},"license":"UNLICENSED","description":"Bonooo MCP server — connect Claude Code / Codex and other MCP-compatible AI agents to your Bonooo account (read-only v1).","maintainers":[{"name":"bonooo","email":"ofall8985@gmail.com"}],"readme":"# @bonooo/mcp — Bonooo MCP Server\n\nConnect Claude Code, Codex or any MCP-compatible AI agent to your\nBonooo trading account. **v1 is strictly read-only** —\naccount, positions, orders, history, quotes, K-lines, symbols.\nNo order placement, no fund movement.\n\n## 1. Get an API key\n\nLog in to the web member center → **Profile → API Keys** → Create key.\nThe plaintext key (`bonooo_live_xxx`) is shown **only once** — copy it immediately.\n\n## 2. Configure your agent\n\n### Claude Code (`.mcp.json` in your project, or `~/.claude.json`)\n\n```json\n{\n  \"mcpServers\": {\n    \"bonooo\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@bonooo/mcp\"],\n      \"env\": {\n        \"BONOOO_API_KEY\": \"bonooo_live_xxx\",\n        \"BONOOO_API_BASE\": \"https://api.bonooo.com\"\n      }\n    }\n  }\n}\n```\n\n### Codex (`~/.codex/config.toml`)\n\n```toml\n[mcp_servers.bonooo]\ncommand = \"npx\"\nargs = [\"-y\", \"@bonooo/mcp\"]\n\n[mcp_servers.bonooo.env]\nBONOOO_API_KEY = \"bonooo_live_xxx\"\nBONOOO_API_BASE = \"https://api.bonooo.com\"\n```\n\n### From a monorepo checkout (before npm publish)\n\n```json\n{\n  \"mcpServers\": {\n    \"bonooo\": {\n      \"command\": \"node\",\n      \"args\": [\"<repo>/packages/mcp-server/dist/cli.js\"],\n      \"env\": { \"BONOOO_API_KEY\": \"bonooo_live_xxx\" }\n    }\n  }\n}\n```\n\n## 3. Tools\n\n| Tool | Args | Returns |\n|---|---|---|\n| `get_account` | — | balance / equity / margin / free margin / floating PnL |\n| `get_positions` | — | open positions with floating PnL |\n| `get_orders` | `status?`, `limit?` | active orders (open + pending) |\n| `get_history` | `limit?` | closed orders, most recent first |\n| `get_quotes` | `symbols[]` | latest bid/ask per symbol |\n| `get_klines` | `symbol`, `period` (M1…MN1), `limit?` | OHLC candles |\n| `list_symbols` | — | tradable symbols and contract info |\n\n## Environment\n\n| Var | Required | Default |\n|---|---|---|\n| `BONOOO_API_KEY` | ✅ | — |\n| `BONOOO_API_BASE` | — | `https://api.bonooo.com` |\n\n## Rate limits & safety\n\n- 60 requests/min per API key (HTTP 429 when exceeded).\n- Keys can be revoked at any time in the member center; revoked/expired keys get 401.\n- v1 exposes **zero write endpoints** — an agent with your key can read, never trade.\n\n## Development\n\n```bash\npnpm --filter @bonooo/mcp build      # tsc → dist/\npnpm --filter @bonooo/mcp selfcheck  # spawn stdio server, assert 7 tools listed\nBONOOO_API_KEY=bonooo_live_xxx node dist/cli.js   # manual run\n```\n","readmeFilename":"README.md"}