feat(mcp-cli): add stdio tool gittensory_get_label_audit - #4219
Conversation
The hosted MCP server exposes gittensory_get_label_audit (src/mcp/server.ts) but the published stdio package never registered it, so a locally-run gittensory-mcp could not reach the label-policy audit. Register the stdio registerTool that proxies the existing public GET /v1/repos/:owner/:repo/intelligence route via apiGet and surfaces its labelAudit slice, matching the ownerRepo input handling of gittensory_get_repo_context. Adds a subprocess stdio test (tool listed + proxied payload) backed by a fixture intelligence route. Closes JSONbored#2229
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4219 +/- ##
=======================================
Coverage 93.76% 93.76%
=======================================
Files 390 390
Lines 36553 36553
Branches 13389 13389
=======================================
Hits 34274 34274
Misses 1623 1623
Partials 656 656 🚀 New features to boost your workflow:
|
|
Tip 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 ✅ Gittensory review result - approve/merge recommendedReview updated: 2026-07-08 18:11:36 UTC
✅ Suggested Action - Approve/Merge
Review summary Nits — 4 non-blocking
Linked issue satisfactionAddressed Review context
Contributor next steps
Signal definitions
🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
…or (#4315) #4219 registered the stdio tool with an inline description instead of the shared STDIO_TOOL_DESCRIPTORS + stdioToolDescription(name) pattern every other tool follows, so the `tools --json`/`tools` CLI subcommand (which only reads STDIO_TOOL_DESCRIPTORS) never listed it -- 33 reported vs. 34 actually registered via server.registerTool.
The hosted MCP server exposes
gittensory_get_label_audit(src/mcp/server.ts) but the published stdio package (packages/gittensory-mcp/bin/gittensory-mcp.js) never registered it, so a locally-rungittensory-mcpcannot reach the label-policy audit (configured-vs-live labels, missing/suspicious labels, trusted-label-pipeline readiness).What this does
gittensory_get_label_auditin the stdio bin, proxying the existing public GET/v1/repos/:owner/:repo/intelligenceroute viaapiGetand surfacing itslabelAuditslice.ownerRepoinput handling of the existinggittensory_get_repo_contexttool (same${prefix}/intelligencesource).Scope
Touches only the stdio bin and
test/**(nosrc/**changes).Closes #2229