{"_id":"@assete/mcp","_rev":"4-a72fe1ebf8fa089295483bb514bf8ec4","name":"@assete/mcp","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@assete/mcp","version":"1.0.0","keywords":["mcp","model-context-protocol","claude","assete","sql"],"license":"MIT","_id":"@assete/mcp@1.0.0","maintainers":[{"name":"assete","email":"contact@assete.ai"}],"bin":{"assete-mcp":"index.cjs"},"dist":{"shasum":"c019d18b0edb710a8e0c6be82bd9b63a40ebbf46","tarball":"https://registry.npmjs.org/@assete/mcp/-/mcp-1.0.0.tgz","fileCount":3,"integrity":"sha512-7gnovSPE9aOnFtxgjmdC62pi87BSNRQ6Kig1ohD9Eh/RJH4nLGbUGaJHhu7mCioIsUIG5mYpYvIsC7GYVHY1YQ==","signatures":[{"sig":"MEUCIQDVGMgQ3lEcHtvYg4VUerUeV11VHKuYuG7124JdhhwcYwIgBSi8ZGsnl0pJCDp+y0OHVSGFcQh5hshGb3gE9EcqMIw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":763536},"type":"commonjs","engines":{"node":">=18"},"gitHead":"d51eba8557d495aa7b2d4d388d38a405c48f1a06","_npmUser":{"name":"assete","email":"contact@assete.ai"},"_npmVersion":"11.3.0","description":"Read-only SQL access to your Assete browsing-activity database, for Claude Code. Bridges to the Assete browser extension over a token-authenticated loopback WebSocket — no data leaves your machine.","directories":{},"_nodeVersion":"24.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.0_1782602982557_0.3731444604789633","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@assete/mcp","version":"1.0.1","keywords":["mcp","model-context-protocol","claude","assete","sql"],"license":"MIT","_id":"@assete/mcp@1.0.1","maintainers":[{"name":"assete","email":"contact@assete.ai"}],"bin":{"assete-mcp":"index.cjs"},"dist":{"shasum":"4106b172dd87b5eca78eec39ca41847d11cdc5dd","tarball":"https://registry.npmjs.org/@assete/mcp/-/mcp-1.0.1.tgz","fileCount":3,"integrity":"sha512-qni2ZlHyvybRLQ7N/lZrl/bxytNVZkPEu3h4DfrlT+bxGMUgy6JGoyo2CB8NvZP2fCb6gsOt8qnCi7QzREzxKw==","signatures":[{"sig":"MEUCIQCSarTkiON/lbZeRZrXVkND4qaRAan1FEAW5NAzRZl32QIgB0BivyWpRbETd0k0buz9FXI6uLl8mOuU9j3cHISXcIM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":764434},"type":"commonjs","engines":{"node":">=18"},"gitHead":"b81644f97fd1b68b6691866d3d82ba1ff60db3fb","_npmUser":{"name":"assete","email":"contact@assete.ai"},"_npmVersion":"11.3.0","description":"Read-only SQL access to your Assete browsing-activity database, for Claude Code. Bridges to the Assete browser extension over a token-authenticated loopback WebSocket — no data leaves your machine.","directories":{},"_nodeVersion":"24.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.1_1783107647727_0.7911925726215727","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@assete/mcp","version":"1.0.2","keywords":["mcp","model-context-protocol","claude","assete","sql"],"license":"MIT","_id":"@assete/mcp@1.0.2","maintainers":[{"name":"assete","email":"contact@assete.ai"}],"bin":{"assete-mcp":"index.cjs"},"dist":{"shasum":"8337dc35cdd9b7f9ed6d4545efb1a21ef599cef5","tarball":"https://registry.npmjs.org/@assete/mcp/-/mcp-1.0.2.tgz","fileCount":3,"integrity":"sha512-r4u7tYnzu3LpuFOepjz7zYWK37+DhdgGZB+tSFhG3BVRQnemVesiSG9q1Bid//A6C4glObhnLAdaVnCBLRGgEw==","signatures":[{"sig":"MEQCIGGHgj9IApwvZ4Ioed2rEkjXk9b0vHLvNMo1cnJBvisgAiADP8x+b+z/DwfpcbBWUka4giapXQXpviUH8JUNAy8SbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":765168},"type":"commonjs","engines":{"node":">=18"},"gitHead":"1a86c6631c2b7854b810e3a30fb51b356fd6e1bf","_npmUser":{"name":"assete","email":"contact@assete.ai"},"_npmVersion":"11.3.0","description":"Read-only SQL access to your Assete browsing-activity database, for Claude Code. Bridges to the Assete browser extension over a token-authenticated loopback WebSocket — no data leaves your machine.","directories":{},"_nodeVersion":"24.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mcp_1.0.2_1783381896228_0.5348732441875772","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@assete/mcp","version":"1.0.3","description":"Read-only SQL access to your Assete browsing-activity database, for Claude Code. Bridges to the Assete browser extension over a token-authenticated loopback WebSocket — no data leaves your machine.","license":"MIT","type":"commonjs","bin":{"assete-mcp":"index.cjs"},"engines":{"node":">=18"},"publishConfig":{"access":"public"},"keywords":["mcp","model-context-protocol","claude","assete","sql"],"_id":"@assete/mcp@1.0.3","gitHead":"340c1b20ff153398252e731cb750d9a11203f102","_nodeVersion":"24.1.0","_npmVersion":"11.3.0","dist":{"integrity":"sha512-vRCi3c3b6PcqutXgJCR+yQiTiC3y7+kuYd5KNa4IbL9kPlCAzSIUB7c6XzhHfvcvcqa6KIw57p8jOfHKXmpYng==","shasum":"b15668b3301def494b2820d60aa6d056e097b19b","tarball":"https://registry.npmjs.org/@assete/mcp/-/mcp-1.0.3.tgz","fileCount":3,"unpackedSize":767652,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC/TusMvqVJgLSOR3FbXF6C9EOa4IRmmolIdXKdwIs0JAIhAIYsOxTMJR5ey6VcRgzJSF6nwH9GuJvYf3kXuYMmAQtM"}]},"_npmUser":{"name":"assete","email":"contact@assete.ai"},"directories":{},"maintainers":[{"name":"assete","email":"contact@assete.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_1.0.3_1785423268027_0.46449626117577636"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-27T23:29:42.464Z","modified":"2026-07-30T14:54:28.455Z","1.0.0":"2026-06-27T23:29:42.698Z","1.0.1":"2026-07-03T19:40:47.882Z","1.0.2":"2026-07-06T23:51:36.393Z","1.0.3":"2026-07-30T14:54:28.234Z"},"license":"MIT","keywords":["mcp","model-context-protocol","claude","assete","sql"],"description":"Read-only SQL access to your Assete browsing-activity database, for Claude Code. Bridges to the Assete browser extension over a token-authenticated loopback WebSocket — no data leaves your machine.","maintainers":[{"name":"assete","email":"contact@assete.ai"}],"readme":"# @assete/mcp\n\nRead-only SQL access to your [Assete](https://assete.ai) browsing-activity\ndatabase, for **Claude Code**. (Claude Desktop uses the `.mcpb` bundle instead.)\n\nThe server bridges to the Assete browser extension over a **token-authenticated\nloopback WebSocket** — no data leaves your machine, and access is read-only and\nscoped to the data categories you enable in the extension.\n\n## Setup\n\n1. Install the Assete browser extension.\n2. In the extension's **Settings → SQL access**, enable a category and **copy the\n   pairing token**.\n3. Register the server with Claude Code (paste your token):\n\n   ```sh\n   claude mcp add assete --transport stdio \\\n     --env FLOWMAP_MCP_TOKEN=<your pairing token> \\\n     -- npx -y @assete/mcp\n   ```\n\n   Optional: `--env FLOWMAP_MCP_PORT=8423` if you changed the port in Settings.\n   The port here must match the extension's connection-port setting (default\n   `8423`); leave both at the default unless you have a reason to change them.\n\nThat's it — `npx` fetches and caches the server; updates ship automatically.\n\n## Notes\n\n- **Concurrent sessions.** Each Claude Desktop / Claude Code session starts its\n  own MCP server. If the anchor port is busy, the server hops to the next free\n  port in a small window (`8423`–`8438` by default). The extension opens one\n  WebSocket per listening server in that window, so Desktop and Code (and\n  multiple Code sessions) can query at the same time. Close idle sessions to\n  free ports; if every port in the window is taken, a new session's tools will\n  be missing until one frees up.\n- **Matching anchors.** The extension only dials `[port, port + 16)`. If the\n  extension's port is set higher than Claude's, Claude's server sits below the\n  window and tools report no extension connected even though other sessions\n  work. Keep both sides on the same port.\n- Requires Node 18+.\n\nSee [../../specs/mcp-sql-access.md](../../specs/mcp-sql-access.md) for the\nsecurity model and transport details.\n","readmeFilename":"README.md"}