feat(miner): scaffold the gittensory-miner MCP stdio server - #5232
feat(miner): scaffold the gittensory-miner MCP stdio server#5232jaytbarimbao-collab wants to merge 1 commit into
Conversation
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Add a second bin entry, gittensory-miner-mcp, mirroring the packages/gittensory-mcp
harness (MCP SDK server + stdio transport). It ships exactly one trivial health-check
tool, gittensory_miner_ping, returning a static {status,tool} object -- no AMS state
read, no arguments -- so future AMS-state-reading tools (status/doctor, portfolio
dashboard, claim-ledger listing) have a real server to be added to.
- new bin/gittensory-miner-mcp.js (executable; exported factory for in-process tests)
- register the bin + @modelcontextprotocol/sdk dependency in package.json (+ lockfile)
- smoke test drives the server over an in-memory transport, asserting the ping response,
the single-tool listing, and the static invariant with no on-disk AMS state
- README pointer for the new entry point and its current single-tool scope
Closes JSONbored#5153
165b499 to
7c798d1
Compare
Codecov Report✅ All modified and coverable lines are covered by tests.
Additional details and impacted files@@ Coverage Diff @@
## main #5232 +/- ##
==========================================
- Coverage 94.34% 86.74% -7.61%
==========================================
Files 473 473
Lines 39968 39968
Branches 14570 14570
==========================================
- Hits 37708 34670 -3038
- Misses 1585 4009 +2424
- Partials 675 1289 +614
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
|
Caution 🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥 🛑 Gittensory review result - fixes requiredReview updated: 2026-07-12 10:44:25 UTC
🛑 Suggested Action - Fix Blockers
Review summary Nits — 1 non-blocking
CI checks failing
Linked issue satisfactionAddressed Review context
Contributor next steps
Signal definitions
[BETA] Chat with GittensoryAsk Gittensory a question about this PR directly in a comment — grounded only in the same cached, public-safe facts shown above, never a new claim.
Full command reference: https://gittensory.aethereal.dev/docs/gittensory-commands 🟩 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.
|
|
Gittensory is closing this pull request on the maintainer's behalf (CI is failing (validate, validate-tests (2), validate-code)). This is an automated maintenance action — to pursue this change, please open a new pull request with the issues resolved. Closed PRs may be analyzed later to improve review accuracy, but they are not automatically reopened or re-reviewed. |
Scaffolds the first MCP entry point under
packages/gittensory-miner, mirroring the existingpackages/gittensory-mcp/bin/gittensory-mcp.jsharness (MCP SDK server + stdio transport). Independently shippable, and it unblocks the other MCP-exposure issues in this batch (status/doctor diagnostics, portfolio dashboard, claim-ledger listing all add tools "to the AMS MCP server from the scaffold").What this adds
packages/gittensory-miner/bin/gittensory-miner-mcp.js— new executable (#!/usr/bin/env node) that boots anMcpServeroverStdioServerTransport. Exports acreateMinerMcpServer()factory so tests can drive it in-process; the transport only starts when the file is run directly as the bin (realpath-matched so an npm/npx symlink still triggers it).gittensory_miner_ping— a health check returning a static{ "status": "ok", "tool": "gittensory_miner_ping" }, empty input schema, no AMS-state reads. No status/doctor, portfolio, or claim-ledger tools here — those are explicit follow-ups.package.json— registers thegittensory-miner-mcpbin, adds@modelcontextprotocol/sdk@1.29.0(pinned to matchgittensory-mcp), and node---checks the new bin inbuild.filesalready shipsbin/. Lockfile updated.Validation (local)
test/unit/miner-mcp-scaffold.test.ts(new): drives the real server over an in-memory transport and asserts (1) exactlygittensory_miner_pingis listed, (2) the ping returns the static object, (3) the invariant — same object on every call with no on-disk AMS state. 3/3 pass.test/unit/miner-package-skeleton.test.ts: updated the exactbinassertion for the new entry; full file 5/5 pass.npm --prefix packages/gittensory-miner run build(node --check all, incl. new bin): OK. Bin ischmod +x, shebang present.Note:
packages/gittensory-miner/**currently sits outside vitest'scoverage.include, socodecov/patchcannot measure this change yet (closed separately by #4864/#4865); the tests above still enforce full behavioral coverage of the new code.Closes #5153