{"_id":"@vruum/mcp","_rev":"7-098ee622b32378f3aebebf6bad85e043","name":"@vruum/mcp","dist-tags":{"latest":"0.6.0"},"versions":{"0.2.2":{"name":"@vruum/mcp","version":"0.2.2","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"license":"MIT","_id":"@vruum/mcp@0.2.2","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"homepage":"https://vruum.ai/docs/mcp","bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"bin":{"vruum-mcp":"dist/index.js"},"dist":{"shasum":"0d02948b112f1d7d5413204d08d4f152debbc8f5","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.2.2.tgz","fileCount":5,"integrity":"sha512-Z/ihfJty7BzSTZcTeFPFfyHf24a4Nsozv9Qvpy+/YS/JFZV79Wg7TonKLmFl4nFcYIgx6RtgWTwsTfRnhtSSuw==","signatures":[{"sig":"MEUCIFOfKPc250NYoy0ebvBcBB156Iyc2vArl0WU7PZlfXOIAiEA9cEIgQrFtXIbDF8SR2oIfXuTlPmKN34cwKhu7TedtxM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":203057},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"_npmUser":{"name":"jonmccutchen","email":"jon@vruum.ai"},"repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.2.2_1785784845736_0.7414505692824263","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@vruum/mcp","version":"0.2.3","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"license":"MIT","_id":"@vruum/mcp@0.2.3","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"homepage":"https://vruum.ai/docs/mcp","bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"bin":{"vruum-mcp":"dist/index.js"},"dist":{"shasum":"cfb64cdc31d358a2723212e3524e9f8102f67c83","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.2.3.tgz","fileCount":5,"integrity":"sha512-f7z3yr9HQLEryxE290uDwOxYwj2CsYoc4N8+Pa4ba0c/CyQa/2FDZIcuq6blA2BewmvE/k/7Eux5ZwTnDWs67w==","signatures":[{"sig":"MEUCIEIyHRPy/tT/rQOt78ZlAQHDFxBtcxzwyvhw8/rTnUHHAiEA8cUOxtIkOOtl0nMlmHVjJK510IdXvMdEWFFBCNK2fRM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":212879},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"3aa51593416ebc55deecb2878c6a5340103ecc32","mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f9a18f2a-43ff-48bd-8989-aa65223945f8"}},"repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.16.0","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.2.3_1785792675300_0.9581579937586737","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@vruum/mcp","version":"0.3.0","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"license":"MIT","_id":"@vruum/mcp@0.3.0","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"homepage":"https://vruum.ai/docs/mcp","bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"bin":{"vruum-mcp":"dist/index.js"},"dist":{"shasum":"9880faa3f1d6385e3bdb863fc3956cbbe5d3deaa","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.3.0.tgz","fileCount":5,"integrity":"sha512-1ai5CWhK7G7KjOI21/wX/xupIEZ7Z3wusT4On32FB5VwEAj6XFHgzH2tEeq8rp8ouH5+5LxL8SLtQ6Jo9TPwqg==","signatures":[{"sig":"MEUCIEhVm7XxfpU8zixaLFIxeEW6ckHHsafYxIffjPNlzpLNAiEAnkPNuPtE5E93Dqxvds4d10ZM1AJMUYfMxd0eH6uo9eo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":212879},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"d52c227c40d55debd07bfbd23bc98057577b4eae","mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f9a18f2a-43ff-48bd-8989-aa65223945f8"}},"repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.16.0","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.3.0_1786107807787_0.47003268109091345","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@vruum/mcp","version":"0.3.1","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"license":"MIT","_id":"@vruum/mcp@0.3.1","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"homepage":"https://vruum.ai/docs/mcp","bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"bin":{"vruum-mcp":"dist/index.js"},"dist":{"shasum":"6301ced0ffe5717511d52048f509849ace8e9015","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.3.1.tgz","fileCount":5,"integrity":"sha512-unOVw91AOOWkk6Q10kPBLH0S47zrlqvLBIIBG4Or4aX4EUzRIVYEIk8TbMTw/2Q7JUUN44jV3CSYf8nj0lxLXw==","signatures":[{"sig":"MEUCIQDBPePEdjHsIoH0SYyvyPhCjw5DKyDz8+s8Fk5PpMPviQIgWVM8W8Sh9tTMbBaQZv7NBYzYxrQkTU4Jt4DBj0rhOOg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":251596},"main":"dist/index.js","type":"module","_from":"file:/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.NX3FTvVMIl/local/vruum-mcp-0.3.1.tgz","engines":{"node":">=20"},"mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"_npmUser":{"name":"jonmccutchen","email":"jon@vruum.ai"},"_resolved":"/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.NX3FTvVMIl/local/vruum-mcp-0.3.1.tgz","_integrity":"sha512-unOVw91AOOWkk6Q10kPBLH0S47zrlqvLBIIBG4Or4aX4EUzRIVYEIk8TbMTw/2Q7JUUN44jV3CSYf8nj0lxLXw==","repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.3.1_1787931979893_0.5203817831637552","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@vruum/mcp","version":"0.4.0","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"license":"MIT","_id":"@vruum/mcp@0.4.0","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"homepage":"https://vruum.ai/docs/mcp","bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"bin":{"vruum-mcp":"dist/index.js"},"dist":{"shasum":"96bda812fe6a988ced31b855a3b6b9a88b4b0875","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.4.0.tgz","fileCount":5,"integrity":"sha512-BwOQJivpR55RqJxMWAkSYC1EgB1ae+Q1hmhsksdnO7Uzmq5KQFVrqoTqwVeTSjno8D/vXv8K3/6haSZ2JF3ZLA==","signatures":[{"sig":"MEUCIQDfYyDZry0fFHYshEkO1/zIvSqPNd6WAY5MxsAZRygPaAIgRPdUaBmxEbIzJ9rTI3Bo86STjkpsHZI3v9zc2YI9S48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":258015},"main":"dist/index.js","type":"module","_from":"file:/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.cqxkJYT3KS/local/vruum-mcp-0.4.0.tgz","engines":{"node":">=20"},"mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"_npmUser":{"name":"jonmccutchen","email":"jon@vruum.ai"},"_resolved":"/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.cqxkJYT3KS/local/vruum-mcp-0.4.0.tgz","_integrity":"sha512-BwOQJivpR55RqJxMWAkSYC1EgB1ae+Q1hmhsksdnO7Uzmq5KQFVrqoTqwVeTSjno8D/vXv8K3/6haSZ2JF3ZLA==","repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.4.0_1788796996486_0.7331058149338854","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@vruum/mcp","version":"0.5.0","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"license":"MIT","_id":"@vruum/mcp@0.5.0","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"homepage":"https://vruum.ai/docs/mcp","bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"bin":{"vruum-mcp":"dist/index.js"},"dist":{"shasum":"36a0694e0fec2cc6d3148e8559e19882203b0c25","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.5.0.tgz","fileCount":5,"integrity":"sha512-2KEhJ9GnAACueBqSMj/JBTnLmZ8SSF+8J0pvB04M72fifmoOMrV/Qkh/4tVoXtO/2ts8ObJfJDZsGs3sgmfAsA==","signatures":[{"sig":"MEYCIQCfyVJzfCgABcRY7QEG46QruJ9TBEnY8zweDk7ff254EQIhAPC54aeuPRGuEpAhnUtumZoAm0drlYSMBVTmOZvU4kCV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICc+3pBTD5QxQRSckq1c8NaGVp/BSmpHgRuY2iKH3q5EAiEArlTsnY9lTe0oYD7PlYnHQzin5mnZ5ADN0N2qXtB9xFY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":280508},"main":"dist/index.js","type":"module","_from":"file:/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.XtpYyXHEa3/local/vruum-mcp-0.5.0.tgz","engines":{"node":">=20"},"mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"_npmUser":{"name":"jonmccutchen","email":"jon@vruum.ai"},"_resolved":"/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.XtpYyXHEa3/local/vruum-mcp-0.5.0.tgz","_integrity":"sha512-2KEhJ9GnAACueBqSMj/JBTnLmZ8SSF+8J0pvB04M72fifmoOMrV/Qkh/4tVoXtO/2ts8ObJfJDZsGs3sgmfAsA==","repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.19.1","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.5.0_1790097799790_0.636456908640656","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"_id":"@vruum/mcp@0.6.0","bin":{"vruum-mcp":"dist/index.js"},"bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"dist":{"shasum":"e1893582ab0c61db2dac6524c34bab146fab7b5c","tarball":"https://registry.npmjs.org/@vruum/mcp/-/mcp-0.6.0.tgz","fileCount":5,"integrity":"sha512-Zsptub6K3whypeh8HQwUc4rmu9vPbdC8Pezfjkt2Sfo4mxxnzuOnqrG/TH6HglYpR3GDq6/82xvU7zm9st/utg==","signatures":[{"sig":"MEUCIQC6ghJntfLasdNodcUhGC45xqTMkHa75TwOnncpbga9tgIgf32Cm1qy5dmbL5SAGbwas40Ec9vfsuyxQ8RX53IXOG8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCB3mN70kqVZGFsQXHHi6iy1l8Cvqv56k6bnsaBrcnZggIgY+VyUJYX4S9k7JjT3GMeZFM7R4eE5E4ivKq7ezQU0ic="}],"unpackedSize":282413},"main":"dist/index.js","name":"@vruum/mcp","type":"module","_from":"file:/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.FIWP08tb78/local/vruum-mcp-0.6.0.tgz","engines":{"node":">=20"},"license":"MIT","mcpName":"ai.vruum/mcp","scripts":{"test":"npm run build && node --test test/*.test.mjs","build":"tsc -p tsconfig.json","postbuild":"chmod +x dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"npm run typecheck && npm run test"},"version":"0.6.0","_npmUser":{"name":"jonmccutchen","email":"jon@vruum.ai"},"homepage":"https://vruum.ai/docs/mcp","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"_resolved":"/var/folders/bg/fqrsf9fs46v2y65f1w98jxtc0000gn/T/vruum-npm-release.XXXXXX.FIWP08tb78/local/vruum-mcp-0.6.0.tgz","_integrity":"sha512-Zsptub6K3whypeh8HQwUc4rmu9vPbdC8Pezfjkt2Sfo4mxxnzuOnqrG/TH6HglYpR3GDq6/82xvU7zm9st/utg==","repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"_npmVersion":"11.19.1","description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","directories":{},"maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"_nodeVersion":"26.9.0","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^24.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_0.6.0_1790196965443_0.4443385717548154"}}},"time":{"created":"2026-08-03T19:20:45.234Z","modified":"2026-09-23T20:56:05.742Z","0.2.2":"2026-08-03T19:20:45.890Z","0.2.3":"2026-08-03T21:31:15.436Z","0.3.0":"2026-08-07T13:03:27.953Z","0.3.1":"2026-08-28T15:46:20.033Z","0.4.0":"2026-09-07T16:03:16.642Z","0.5.0":"2026-09-22T17:23:19.887Z","0.6.0":"2026-09-23T20:56:05.534Z"},"bugs":{"url":"https://github.com/vruum-gtm/mcp/issues"},"license":"MIT","homepage":"https://vruum.ai/docs/mcp","keywords":["vruum","mcp","mcp-server","model-context-protocol","sales","crm","revenue","outreach","gtm"],"repository":{"url":"git+https://github.com/vruum-gtm/mcp.git","type":"git"},"description":"Stdio MCP bridge for the hosted Vruum revenue-platform MCP (https://api.vruum.ai/mcp): serves the advertised tool surface for credential-free introspection and proxies tool calls with your Vruum token.","maintainers":[{"name":"jonmccutchen","email":"jon@vruum.ai"}],"readme":"# Vruum MCP (`@vruum/mcp`)\n\n[![npm](https://img.shields.io/npm/v/@vruum/mcp)](https://www.npmjs.com/package/@vruum/mcp)\n[![license](https://img.shields.io/badge/license-MIT-blue)](LICENSE)\n[![registry](https://img.shields.io/badge/MCP%20registry-ai.vruum%2Fmcp-6E56CF)](https://registry.modelcontextprotocol.io)\n\nOfficial MCP access to [**Vruum**](https://vruum.ai), the AI revenue platform. Give your agent the whole revenue motion — research prospects, build pipeline, run email and LinkedIn outreach, triage replies, manage deals through close, and read Stripe-backed revenue truth — through **29 compound tools** rather than a sprawl of endpoints.\n\nThis package is a **stdio bridge**: it serves the tool surface locally (no credentials needed to introspect) and proxies execution to `https://api.vruum.ai/mcp` under your token. Every call is authorized server-side — the bridge grants no authority your Vruum account doesn't already have.\n\n> [!TIP]\n> **Using a client that supports remote MCP? Connect directly instead.**\n> Claude Code, Claude Desktop, Cursor, Codex and friends should point straight at `https://api.vruum.ai/mcp` (OAuth 2.1). Fewer moving parts and no token in an env var. This bridge exists for **stdio-only clients** and for **credential-free tool introspection**. See [vruum.ai/docs/mcp](https://vruum.ai/docs/mcp).\n\n## Quickstart\n\nYou need Node 20+ and a Vruum account. Create a personal access token in the web app under **Settings → API tokens** (`vk_live_…`).\n\n<details open>\n<summary><b>Claude Desktop / Claude Code</b> — <code>claude_desktop_config.json</code> or <code>.mcp.json</code></summary>\n\n```json\n{\n  \"mcpServers\": {\n    \"vruum\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@vruum/mcp\"],\n      \"env\": { \"VRUUM_MCP_TOKEN\": \"vk_live_…\" }\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><b>Cursor</b> — <code>~/.cursor/mcp.json</code></summary>\n\n```json\n{\n  \"mcpServers\": {\n    \"vruum\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@vruum/mcp\"],\n      \"env\": { \"VRUUM_MCP_TOKEN\": \"vk_live_…\" }\n    }\n  }\n}\n```\n</details>\n\n<details>\n<summary><b>Codex CLI</b> — <code>~/.codex/config.toml</code></summary>\n\n```toml\n[mcp_servers.vruum]\ncommand = \"npx\"\nargs = [\"-y\", \"@vruum/mcp\"]\nenv = { VRUUM_MCP_TOKEN = \"vk_live_…\" }\n```\n</details>\n\n<details>\n<summary><b>Already use the Vruum CLI?</b> — no token needed here</summary>\n\n```sh\nnpx @vruum/cli\nvruum login --token vk_live_…\n```\n\nCredentials land in `~/.vruum/credentials` and the bridge picks them up automatically — omit the `env` block entirely.\n</details>\n\nVerify it works without configuring anything:\n\n```sh\nnpx -y @modelcontextprotocol/inspector --cli npx -y @vruum/mcp --method tools/list\n```\n\n## What you can ask for\n\nOnce connected, these are ordinary requests to your agent:\n\n| You say | What happens |\n| --- | --- |\n| *\"What should I work on today?\"* | `get_daily_briefing` — pending approvals, new replies, stalled deals, warm paths, one recommended next action |\n| *\"Review my outreach drafts\"* | `get_outreach_review` → you approve, edit, or reject each one |\n| *\"Research Acme Corp and tell me if they fit\"* | `research` — website, funding, careers signals, ICP match with reasoning |\n| *\"Find a warm intro to this person\"* | `find_warm_path` — separates verified paths from unverified connector candidates |\n| *\"Which campaigns are actually working?\"* | `get_campaign_outcomes` — contacted, replies, meetings booked, cohort-consistent |\n| *\"What's at risk in my pipeline?\"* | `inspect_pipeline` — the 5 most at-risk deals, risk-first |\n| *\"Draft a LinkedIn post about X\"* | `manage_content` — your agent writes it, you approve, Vruum schedules and publishes |\n\n> [!IMPORTANT]\n> **Your agent writes the prose — the server never does.** Outreach copy, replies, LinkedIn posts and comments surface to your harness as work items. Vruum schedules, gates, persists and sends; it has no server-side message generation. That's a deliberate design position, not a gap.\n\n## Tool surface\n\n29 compound tools — one per decision, so an agent never disambiguates between overlapping verbs. `read` is safe to call freely; `write` mutates; `destructive` can delete or archive.\n\n| Area | Tools |\n| --- | --- |\n| **Daily operating** | `get_daily_briefing` · `get_next_actions` · `inspect_pipeline` |\n| **Search & research** | `search` · `fetch` · `research` · `import_prospects` · `find_warm_path` |\n| **People** | `get_person_360` · `manage_person` |\n| **Outreach** | `get_outreach_review` · `manage_messages` · `manage_outreach` · `manage_relationship_action` |\n| **Engagement & content** | `get_engagement_review` · `manage_engagements` · `get_content_review` · `manage_content` |\n| **Campaigns & performance** | `manage_campaign` · `get_campaign_outcomes` · `get_performance_metrics` |\n| **Deals** | `get_deal_360` · `manage_deal` |\n| **Revenue** | `get_revenue` · `manage_revenue` |\n| **Accounts & knowledge** | `manage_account` · `manage_kb` |\n| **Config & skills** | `manage_settings` · `skill` |\n\nFull schemas, descriptions and MCP safety annotations live in [`tools.json`](tools.json) — generated from the live server definition, never hand-edited.\n\nThe 0.5.0 package includes the deployed P2e revenue contracts in that snapshot:\n`get_revenue` account and service-margin views, and the reviewed finance-statement\naction in `manage_revenue`. Hosted remote MCP already exposes these contracts;\nstdio clients receive the updated advertised schema after package publication\nand upgrade. Finance attestation, binding decisions and measurement approval\nretain their separate server-side checks.\n\n## Configuration\n\n| Env var | Meaning | Default |\n| --- | --- | --- |\n| `VRUUM_MCP_TOKEN` | Vruum personal access token | falls back to `VRUUM_TOKEN`, then `~/.vruum/credentials` |\n| `VRUUM_MCP_URL` | Hosted MCP endpoint | `https://api.vruum.ai/mcp` |\n| `VRUUM_MCP_TIMEOUT_MS` | Per-call timeout — research and imports run long | `300000` |\n| `VRUUM_CONFIG_DIR` | Credentials directory | `~/.vruum` |\n\n## How it works\n\n```\nyour agent  ──stdio/JSON-RPC──▶  @vruum/mcp\n                                     │\n                    tools/list ──────┤  served locally from tools.json\n                                     │  (no network, no credentials)\n                                     │\n                    tools/call ──────┴──HTTPS+Bearer──▶  api.vruum.ai/mcp\n                                                          (authorized server-side)\n```\n\nListings are a **static snapshot** bundled at release. That's what makes credential-free introspection possible, and it means a newly added tool won't *appear* until the next release — calls still execute correctly, since they proxy through. A CI guard regenerates `tools.json` on every backend change, so the snapshot can be one release old but never silently wrong.\n\n## Safety and credentials\n\n- **Server-side authorization.** The bridge adds no permissions. Your token is exactly your Vruum account, and role/tenant checks happen on the server.\n- **No automatic retries.** A failed `tools/call` is never replayed. Many of these tools send outreach or spend money, and an ambiguous failure may mean the server already executed — a silent retry could double-send. The connection is discarded, the error says so, and your agent decides whether re-running is safe.\n- **Your token never leaves your machine** except as a `Bearer` header to `api.vruum.ai`.\n\n> [!WARNING]\n> **The bridge picks up ambient credentials.** With no `VRUUM_MCP_TOKEN` set it falls back to `~/.vruum/credentials`. If you are logged in with the Vruum CLI, then running this server — via the MCP Inspector, a client, or a script — executes **against your real account and real data**. Write tools will really write.\n>\n> To poke at it with no credentials, pass an explicit env that reaches the process:\n>\n> ```sh\n> env -i PATH=\"$PATH\" HOME=/tmp/empty node dist/index.js\n> ```\n>\n> Note that MCP clients following the SDK default only forward an allowlist (`HOME`, `PATH`, `SHELL`, `TERM`, `USER`, `LOGNAME`) to spawned servers — so setting `VRUUM_CONFIG_DIR` in your shell may be **stripped before it reaches the bridge**, while `HOME` survives and the credentials file is found anyway. Set credentials in the client's own `env` block instead.\n\n## Development\n\nThis repo is a **build artifact of the Vruum monorepo**, resynced automatically on release. `tools.json` is generated from the live server definition, so it cannot drift from what the hosted server exposes.\n\n```\nsrc/index.ts   the bridge — token resolution, static listings, proxied calls\ntools.json     generated tool surface (do not edit by hand)\ntest/          black-box tests: spawn the built binary, speak raw JSON-RPC\n```\n\n```sh\nnpm install\nnpm test        # builds, then runs the black-box suite\nnpm run typecheck\n```\n\nTests drive the built binary over stdin/stdout and assert **at the wire level** rather than through an SDK client — an SDK-mediated test hides protocol mistakes, since it will happily hand back a result object whether the server returned `result` or `error`. They cover the initialize handshake, credential-free listing, protocol-vs-execution error semantics, cursor rejection, capability declaration, and stdout hygiene.\n\n**Issues and PRs are welcome here.** Maintainers apply accepted changes upstream in the monorepo and they flow back on the next sync — so a merged fix here may appear as part of a sync commit rather than your original one. Changes to `tools.json` must come from the generator, not by hand.\n\n## Links\n\n[Vruum](https://vruum.ai) · [MCP docs](https://vruum.ai/docs/mcp) · [Getting started](https://vruum.ai/docs/getting-started) · [CLI reference](https://vruum.ai/docs/cli-reference)\n\nRegistry entry `ai.vruum/mcp` · Claude & Codex plugin [`vruum-gtm/skills`](https://github.com/vruum-gtm/skills)\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}