{"_id":"@bellhop-marketing/mcp-install","_rev":"3-9b87df2127477f135e46468216886d25","name":"@bellhop-marketing/mcp-install","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"@bellhop-marketing/mcp-install","version":"0.1.0","keywords":["mcp","model-context-protocol","bellhop","claude","claude-code","cursor","installer"],"author":{"name":"Dialogue Consulting Pty Ltd"},"license":"MIT","_id":"@bellhop-marketing/mcp-install@0.1.0","maintainers":[{"name":"hughstephens","email":"hugh@skedsocial.com"}],"homepage":"https://bellhop.marketing","bugs":{"url":"https://github.com/DialogueConsulting/bellhop-mcp-install/issues"},"bin":{"mcp-install":"bin/install.js"},"dist":{"shasum":"be6941b9148f6782f94ca2520dc5b03074317941","tarball":"https://registry.npmjs.org/@bellhop-marketing/mcp-install/-/mcp-install-0.1.0.tgz","fileCount":4,"integrity":"sha512-4cfGUtUHTJQzqEuAnpvQZ1zwxdtelNu87TeHQV7jtSaxnI/RONlFkQGsJNFGGKspSWu6/Od1cIe1seG0N2ch4w==","signatures":[{"sig":"MEUCIC9gsF3WS9cOrYu0X/DeKZTk6hS6CvAWL8VoBB4OhUzaAiEAu+cTvPZr/GikjlltDbtT4Ip72Qv8wDhJ3TeK/bw7jRg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17711},"engines":{"node":">=18"},"gitHead":"0b5adec60154f4fb9cbe6ed18cc95120153edf4a","scripts":{"smoke":"node bin/install.js --print --all"},"_npmUser":{"name":"hughstephens","email":"hugh@skedsocial.com"},"repository":{"url":"git+https://github.com/DialogueConsulting/bellhop-mcp-install.git","type":"git"},"_npmVersion":"11.6.2","description":"One command to connect the Bellhop MCP server to Claude Code, Cursor, and Claude Desktop.","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mcp-install_0.1.0_1782349490314_0.9025662523714486","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@bellhop-marketing/mcp-install","version":"0.2.0","keywords":["mcp","model-context-protocol","bellhop","claude","claude-code","claude-skills","cursor","installer"],"author":{"name":"Dialogue Consulting Pty Ltd"},"license":"MIT","_id":"@bellhop-marketing/mcp-install@0.2.0","maintainers":[{"name":"hughstephens","email":"hugh@skedsocial.com"}],"homepage":"https://bellhop.marketing","bugs":{"url":"https://github.com/DialogueConsulting/bellhop-mcp-install/issues"},"bin":{"mcp-install":"bin/install.js"},"dist":{"shasum":"0148e379b6c1b9769e13d8547cd5415405bd06ee","tarball":"https://registry.npmjs.org/@bellhop-marketing/mcp-install/-/mcp-install-0.2.0.tgz","fileCount":4,"integrity":"sha512-BIyDPNEx2WqGngzC5Zi4vhaEceloPaM0PNY7xDL/LHTVU4RN9T8dITwKF0njhuhcMY7RF5Ox1MFhskBLOfW2bA==","signatures":[{"sig":"MEUCIQCUY8UXkz2AVkmtE7z/zqKT54Q4fjcTSpavEvvJU4T0/wIgBbcCTnIC5EgKQrPRihk65QHciN+YXxEwmn7OKLwEynE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30927},"engines":{"node":">=18"},"gitHead":"d290fd6cc50b877fbd3d66b6e63e9934b225f2a8","scripts":{"smoke":"node bin/install.js --print --all"},"_npmUser":{"name":"hughstephens","email":"hugh@skedsocial.com"},"repository":{"url":"git+https://github.com/DialogueConsulting/bellhop-mcp-install.git","type":"git"},"_npmVersion":"11.6.2","description":"One command to connect the Bellhop MCP server to Claude Code, Cursor, and Claude Desktop — and install the Bellhop skills into Claude Code.","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mcp-install_0.2.0_1782353342261_0.839338957990188","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bellhop-marketing/mcp-install","version":"0.3.0","description":"One command to connect the Bellhop MCP server to Claude Code, Cursor, and Claude Desktop — and install the Bellhop skills into Claude Code.","bin":{"mcp-install":"bin/install.js"},"engines":{"node":">=18"},"scripts":{"smoke":"node bin/install.js --print --all","test":"node --test test/*.test.js"},"keywords":["mcp","model-context-protocol","bellhop","claude","claude-code","claude-skills","cursor","installer"],"license":"MIT","author":{"name":"Dialogue Consulting Pty Ltd"},"repository":{"type":"git","url":"git+https://github.com/DialogueConsulting/bellhop-mcp-install.git"},"homepage":"https://bellhop.marketing","bugs":{"url":"https://github.com/DialogueConsulting/bellhop-mcp-install/issues"},"gitHead":"1714ab37c472bee3483f405b8e15b563ea0f51c5","_id":"@bellhop-marketing/mcp-install@0.3.0","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-TDDfHlExUPHzcSbAao09PPh5hzo7MhxYJwR+hNSZTUyktJVTro+XAM8HKJTLWu0e7LwyeyjXX72lx2L2GG3FeA==","shasum":"8188fbdb8efa3a3c7011487f5b0c2990edccd5a7","tarball":"https://registry.npmjs.org/@bellhop-marketing/mcp-install/-/mcp-install-0.3.0.tgz","fileCount":4,"unpackedSize":38248,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHnRKPV1z4MHdLU7fYhkaGHbw2SauUtmaimKipaTV9L6AiAsVmJGglrOFraO/sJS4AL7XqK1bCnxDInoEeoLPhRETA=="}]},"_npmUser":{"name":"hughstephens","email":"hugh@skedsocial.com"},"directories":{},"maintainers":[{"name":"hughstephens","email":"hugh@skedsocial.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-install_0.3.0_1782357516687_0.19997535067136263"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-25T01:04:50.187Z","modified":"2026-06-25T03:18:36.931Z","0.1.0":"2026-06-25T01:04:50.449Z","0.2.0":"2026-06-25T02:09:02.417Z","0.3.0":"2026-06-25T03:18:36.814Z"},"bugs":{"url":"https://github.com/DialogueConsulting/bellhop-mcp-install/issues"},"author":{"name":"Dialogue Consulting Pty Ltd"},"license":"MIT","homepage":"https://bellhop.marketing","keywords":["mcp","model-context-protocol","bellhop","claude","claude-code","claude-skills","cursor","installer"],"repository":{"type":"git","url":"git+https://github.com/DialogueConsulting/bellhop-mcp-install.git"},"description":"One command to connect the Bellhop MCP server to Claude Code, Cursor, and Claude Desktop — and install the Bellhop skills into Claude Code.","maintainers":[{"name":"hughstephens","email":"hugh@skedsocial.com"}],"readme":"# @bellhop-marketing/mcp-install\n\nOne command to connect the **[Bellhop](https://bellhop.marketing) MCP server** to your AI client — Claude Code, Cursor, or Claude Desktop — **and** install the [Bellhop skills](https://github.com/DialogueConsulting/bellhop-skills) into Claude Code. It writes the right config entry for each client and points it at Bellhop's hosted, OAuth-authenticated MCP endpoint. There's no API key to paste: each client signs you in through the browser on first use.\n\n```bash\nnpx @bellhop-marketing/mcp-install\n```\n\nThat's it — the installer detects which clients you have, asks which to set up (or use `--all`), writes the config, and offers to install the Bellhop skills. Restart the client and you're connected.\n\n## What it does\n\nThe Bellhop MCP server is a **remote, streamable-HTTP endpoint** at `https://app.bellhop.marketing/mcp`, authenticated with OAuth 2.0. This installer simply adds a `bellhop` server entry to each client's MCP config:\n\n| Client | Config file | How it's registered |\n| --- | --- | --- |\n| **Claude Code** | `~/.claude.json` | `claude mcp add --transport http …` when the `claude` CLI is present (falls back to writing `{ \"type\": \"http\", \"url\": \"…/mcp\" }` directly) |\n| **Cursor** | `~/.cursor/mcp.json` | `{ \"url\": \"…/mcp\" }` |\n| **Claude Desktop** | `claude_desktop_config.json` (per-OS) | `npx -y mcp-remote …/mcp` bridge |\n\nFor Claude Code the installer prefers the supported `claude mcp add` path: it writes through Claude Code's own config writer (no clobbering if Claude Code is open during `npx`) and reliably arms the `/mcp` sign-in prompt. When the CLI isn't on `PATH`, it merges the JSON entry directly instead.\n\nClaude Desktop can't dial a remote MCP from its config file directly, so the installer bridges it through the standard [`mcp-remote`](https://www.npmjs.com/package/mcp-remote) proxy, which handles the OAuth flow.\n\nYour existing MCP servers and any other config keys are preserved — the installer merges in one entry and **backs up the previous file to `.bak`** before writing.\n\n## Usage\n\n```bash\nnpx @bellhop-marketing/mcp-install [options]\n```\n\n| Option | Description |\n| --- | --- |\n| `--client <id>` | Configure a specific client (repeatable). Ids: `claude-code`, `cursor`, `claude-desktop`. |\n| `--all` | Configure every supported client. |\n| `--yes`, `-y` | Non-interactive: use detected clients (or all) without prompting. |\n| `--print` | Dry run — print what would be written, change nothing. |\n| `--skills` | Also install the Bellhop skills into `~/.claude/skills` (no prompt). |\n| `--no-skills` | Skip the Bellhop skills install. |\n| `--uninstall` | Remove the Bellhop MCP entry and the `bellhop-*` skills. |\n| `--verify` | After installing, run `claude mcp get` and report whether Claude Code registered the server. |\n| `--url <url>` | Override the MCP endpoint (default `https://app.bellhop.marketing/mcp`). |\n| `--name <name>` | Override the server key written to config (default `bellhop`). |\n| `--help`, `-h` | Show help. |\n\n### Examples\n\n```bash\nnpx @bellhop-marketing/mcp-install                 # interactive — pick clients + skills\nnpx @bellhop-marketing/mcp-install --all --yes     # configure everything, no prompts\nnpx @bellhop-marketing/mcp-install --client cursor # just Cursor (MCP only)\nnpx @bellhop-marketing/mcp-install --skills        # MCP + skills, skip the skills prompt\nnpx @bellhop-marketing/mcp-install --print --all   # preview the config changes first\nnpx @bellhop-marketing/mcp-install --uninstall     # remove Bellhop config + skills\n```\n\n## Bellhop Skills\n\n[Bellhop skills](https://github.com/DialogueConsulting/bellhop-skills) are opinionated, model-triggered workflows that drive the Bellhop MCP tools — build an intent map, find the safe zones to personalize, draft grounded copy, QA it before publish, run experiments, report results. When Claude Code is among your targets, the installer offers to install them:\n\n```\nInstall the Bellhop skills into ~/.claude/skills? [Y/n]\n```\n\nSay yes (or pass `--skills`) and the skills land in `~/.claude/skills/bellhop-*`. An existing `bellhop-*` skill is backed up to `<name>.bak` before being replaced; no other skill is touched.\n\n- **Claude Code / claude.ai only.** Skills are a Claude Code construct — Cursor and Claude Desktop get the MCP server only, so the installer skips skills for them.\n- **How it works.** The installer fetches the public [`bellhop-skills`](https://github.com/DialogueConsulting/bellhop-skills) repo tarball and unpacks it with the `tar` that ships on macOS, Linux, and Windows 10+. Still zero npm dependencies.\n- **Prefer to manage it yourself?** Add the repo as a Claude Code plugin marketplace instead:\n\n  ```\n  /plugin marketplace add DialogueConsulting/bellhop-skills\n  /plugin install bellhop-skills\n  ```\n\n## After installing\n\n1. **Restart** the client (fully quit and reopen Claude Desktop).\n2. **Sign in — this is the step that actually loads the tools.** Bellhop's MCP is OAuth-protected, so its tools appear **only after** you complete the browser sign-in. In Claude Code: run `/mcp`, select **bellhop**, choose **Authenticate**, and finish the browser flow. A status of *\"Connected\"* alone means the server is reachable, **not** that you're signed in — the tools won't show until OAuth completes.\n3. You'll choose a workspace and the scopes to grant (`read`, `write`, `admin`, `billing`) — you can grant less than your role allows.\n\nManage or revoke authorized clients any time in **Bellhop → Settings → MCP**.\n\n## Troubleshooting\n\n**\"Connected\" but no Bellhop tools show up.** That means the server is reachable but you haven't signed in yet — they're two different things. Run `/mcp`, select **bellhop**, choose **Authenticate**, and complete the browser flow; the tools load right after.\n\n**`/mcp` doesn't offer an \"Authenticate\" action.** Reset the entry so Claude Code re-arms the prompt, then fully restart Claude Code:\n\n```bash\nclaude mcp remove bellhop -s user\nclaude mcp add --transport http --scope user bellhop https://app.bellhop.marketing/mcp\n```\n\nThen run `/mcp` → **bellhop** → **Authenticate**. You can also re-run the installer with `--verify` to confirm registration.\n\n## Connect manually\n\nPrefer to do it yourself? For Claude Code:\n\n```bash\nclaude mcp add --transport http bellhop https://app.bellhop.marketing/mcp\n```\n\nFor Cursor, add to `~/.cursor/mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"bellhop\": { \"url\": \"https://app.bellhop.marketing/mcp\" }\n  }\n}\n```\n\n## Uninstall\n\n```bash\nnpx @bellhop-marketing/mcp-install --uninstall\n```\n\nThis removes the `bellhop` MCP entry from each detected client's config (backing it up to `.bak` first) and deletes the `bellhop-*` skills from `~/.claude/skills`. You can scope it with `--client <id>` and preview it with `--print`. Then restart the client and revoke its token in **Bellhop → Settings → MCP**. To undo by hand instead, restore the `.bak` the installer left next to each config file.\n\n## Notes\n\n- **Zero runtime dependencies.** Node ≥ 18, built-ins only (skills install uses the system `tar`).\n- **No telemetry.** The installer only reads and writes local config files and fetches the public skills tarball when you opt in.\n\n## License\n\nMIT © Dialogue Consulting Pty Ltd\n","readmeFilename":"README.md"}