fix: remove hound_ prefix from MCP tool names (complete) - #75
Conversation
MCP clients already prefix tools with the server name, causing redundant double-prefixing (e.g. hound_hound_audit). Strip the hound_ prefix from all 12 tool name definitions. Closes tiluckdave#9
The tool name prefixes (hound_audit -> audit, etc.) were already changed in the MCP registration. This commit fixes all remaining references in help text, prompts, README, and docs to match. Changes: - src/tools/audit.ts, preinstall.ts, upgrade.ts: help text strings - src/prompts/*.ts: 3 prompt files with tool name references - README.md: tools table, use cases, and roadmap references - docs/tools.md: all 12 tool sections (headings, syntax, examples) - docs/prompts.md: all 3 prompt sections 123/123 tests pass. Closes tiluckdave#9.
There was a problem hiding this comment.
Pull request overview
This PR completes the removal of the hound_ prefix from MCP tool names by renaming tool registrations and updating user-facing references (prompts + docs) to use the new unprefixed names.
Changes:
- Renames registered MCP tool names from
hound_*to unprefixed names (e.g.,audit,vulns,license_check). - Updates in-tool guidance/help strings and built-in prompt instructions to reference the new tool names.
- Updates README and docs pages (
docs/tools.md,docs/prompts.md) to match the new naming.
Reviewed changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| src/tools/vulns.ts | Renames the registered tool from hound_vulns to vulns. |
| src/tools/upgrade.ts | Renames the tool to upgrade and updates guidance text to reference advisories/compare. |
| src/tools/typosquat.ts | Renames the registered tool from hound_typosquat to typosquat. |
| src/tools/tree.ts | Renames the registered tool from hound_tree to tree. |
| src/tools/score.ts | Renames the registered tool from hound_score to score. |
| src/tools/preinstall.ts | Renames the tool to preinstall and updates “Run …” hints to new names. |
| src/tools/popular.ts | Renames the registered tool from hound_popular to popular. |
| src/tools/license-check.ts | Renames the registered tool from hound_license_check to license_check. |
| src/tools/inspect.ts | Renames the registered tool from hound_inspect to inspect. |
| src/tools/compare.ts | Renames the registered tool from hound_compare to compare. |
| src/tools/audit.ts | Renames the tool to audit and updates “Run …” hints to new names. |
| src/tools/advisories.ts | Renames the registered tool from hound_advisories to advisories. |
| src/prompts/security_audit.ts | Updates prompt instructions to call unprefixed tool names. |
| src/prompts/pre_release_check.ts | Updates prompt instructions to call unprefixed tool names. |
| src/prompts/package_evaluation.ts | Updates prompt instructions to call unprefixed tool names. |
| README.md | Updates tools table + use-case examples to the new tool names. |
| docs/tools.md | Updates tool headings/syntax/examples to unprefixed tool names. |
| docs/prompts.md | Updates prompt docs to reference unprefixed tool names. |
| .omo/run-continuation/ses_17c8b3bbbffeRjqiOFUfwez9Sg.json | Adds a session metadata JSON file (appears to be an accidental artifact). |
| .omo/run-continuation/ses_17c4feeb8ffew8aF01tK3sMcT7.json | Adds a session metadata JSON file (appears to be an accidental artifact). |
Comments suppressed due to low confidence (1)
docs/tools.md:357
- The
license_checkexample output doesn’t match the tool’s actual output format (header text and the “Scanned:” line). The implementation prints🔏 Hound License CheckandScanned: <n> packages (first 50 of <total>)when truncated, so the docs example can’t show scanning 142 packages without noting the cap.
📄 License Audit — package-lock.json (policy: permissive)
══════════════════════════════════════════════════
Scanned 142 packages
| | `none` | Report only — no violations flagged | | ||
|
|
||
| ### Example: hound_license_check | ||
| ### Example: license_check |
| @@ -104,9 +104,9 @@ Add to your MCP config file: | |||
| → [See full examples with real lockfiles and expected output](examples/) | |||
| { | ||
| "sessionID": "ses_17c8b3bbbffeRjqiOFUfwez9Sg", | ||
| "updatedAt": "2026-06-01T13:53:11.473Z", | ||
| "sources": { | ||
| "background-task": { | ||
| "state": "idle", | ||
| "updatedAt": "2026-06-01T13:53:11.473Z" | ||
| } | ||
| } | ||
| } No newline at end of file |
| { | ||
| "sessionID": "ses_17c4feeb8ffew8aF01tK3sMcT7", | ||
| "updatedAt": "2026-06-01T14:57:31.898Z", | ||
| "sources": { | ||
| "background-task": { | ||
| "state": "idle", | ||
| "updatedAt": "2026-06-01T14:57:31.898Z" | ||
| } | ||
| } | ||
| } No newline at end of file |
|
The rename itself is correct and complete — I confirmed all 12 tools are unprefixed, names are unique, they wire through
Optional sweep-up: Heads-up on sequencing: I'm landing the typosquat cluster (#73, then #71) just before this, then rebasing the parser/error PRs (#70/#76/#78) on top of the rename — so please don't be surprised if I ask for a final rebase right before merge. Once 1 and 2 are in, this goes in. Thanks for the thorough work. |
- Add `.omo/` to .gitignore so agent session files can't be committed again (they were accidentally included in PR #75). - Restrict the dev-dependencies Dependabot group to minor/patch so major bumps get their own reviewable PR. A grouped TypeScript 5->6 major broke CI in PR #58. Co-authored-by: Tilak Dave <tiluckdave@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
|
Following up, @yizhi-shi — ready to merge once the two blockers are cleared: |
|
Hey @yizhi-shi, still around? Just need the .omo files removed and the Policies table restored, then this is good to merge. |
|
Also, a ⭐ would be much appreciated if you're finding this useful 🙌 |
|
Hey @yizhi-shi — this still merges cleanly. Drop the stray .omo files and restore the Policies table in docs/tools.md and I'll get it in. Otherwise I'll close it out soon. |
This PR completes the tool rename started in #11 by also updating all help text, prompts, README, and docs to match the unprefixed tool names.
What changed?
Why this matters:
PR #11 (by zamadye) only changed the tool name definitions but left all help text, prompts, and docs referencing the old hound_* names. The owner requested these changes but they were never completed. This PR finishes the job.
123/123 tests pass. Closes #9.