Problem
MCP is loopover's primary agent-facing surface for both AMS (miner) and ORB (review) work, and today it's split across two independently-implemented codebases: packages/loopover-mcp/bin/loopover-mcp.js (the published, locally-installed --stdio wrapper, ~4,485 lines) and src/mcp/server.ts (the remote/hosted server, ~4,379 lines). This session's gardening pass already found and filed 6 concrete tool-coverage parity gaps between them (#6149, #6150, #6151, #6152, #6153, #6154). This epic is the layer above that: deciding whether the two should share an implementation core (not just matching tool lists), and building real usage telemetry so future prioritization is evidence-based instead of guesswork.
Area
packages/loopover-mcp/, src/mcp/server.ts, src/api/routes.ts (auth endpoints), a new telemetry sink.
Proposal
Two sub-specs, each a genuine architecture/design decision:
- Shared-core decision — should tool implementations (not just tool names) be de-duplicated between local and remote, given
packages/loopover-miner/lib/github-token-resolution.js's own header comment already explains why a hard runtime dependency between @loopover/mcp and @loopover/miner was deliberately avoided ("separately-installable CLIs... installing one doesn't require the other")? The same tension likely applies here.
- Telemetry strategy — instrument real per-tool, per-caller-type usage tracking (which tools get called, how often, by local vs. remote callers) so future MCP prioritization stops being guesswork. Must respect this repo's existing strong privacy boundary (README: "MCP local branch analysis sends metadata, not source contents") — no source content, no PR body/diff text, no wallet/hotkey/trust-score data in any tracked event.
Auth itself is not included as a separate spec here — loopover-mcp login's GitHub App device-flow (landed this week, #6114-#6117) already appears to deliver a frictionless single-login experience for both products; if either sub-spec surfaces a remaining rough edge during design, fold it in rather than filing a third spec speculatively.
Deliverables
Resources
packages/loopover-mcp/bin/loopover-mcp.js, src/mcp/server.ts
packages/loopover-miner/lib/github-token-resolution.js (the existing "separately-installable CLIs" rationale to weigh against)
#6114-#6117 (the GitHub App device-flow auth work this epic builds on, not duplicates)
Boundaries
maintainer-only until both sub-specs land a real decision — this is architecture and privacy-boundary judgment, not mechanical engineering.
- No telemetry event may carry source code, PR content, wallet/hotkey material, or trust/reward scores — matches this repo's existing privacy commitments.
- Neither sub-spec should assume the other's outcome; a shared-core decision doesn't require a particular telemetry answer and vice versa.
Problem
MCP is loopover's primary agent-facing surface for both AMS (miner) and ORB (review) work, and today it's split across two independently-implemented codebases:
packages/loopover-mcp/bin/loopover-mcp.js(the published, locally-installed--stdiowrapper, ~4,485 lines) andsrc/mcp/server.ts(the remote/hosted server, ~4,379 lines). This session's gardening pass already found and filed 6 concrete tool-coverage parity gaps between them (#6149, #6150, #6151, #6152, #6153, #6154). This epic is the layer above that: deciding whether the two should share an implementation core (not just matching tool lists), and building real usage telemetry so future prioritization is evidence-based instead of guesswork.Area
packages/loopover-mcp/,src/mcp/server.ts,src/api/routes.ts(auth endpoints), a new telemetry sink.Proposal
Two sub-specs, each a genuine architecture/design decision:
packages/loopover-miner/lib/github-token-resolution.js's own header comment already explains why a hard runtime dependency between@loopover/mcpand@loopover/minerwas deliberately avoided ("separately-installable CLIs... installing one doesn't require the other")? The same tension likely applies here.Auth itself is not included as a separate spec here —
loopover-mcp login's GitHub App device-flow (landed this week, #6114-#6117) already appears to deliver a frictionless single-login experience for both products; if either sub-spec surfaces a remaining rough edge during design, fold it in rather than filing a third spec speculatively.Deliverables
Resources
packages/loopover-mcp/bin/loopover-mcp.js,src/mcp/server.tspackages/loopover-miner/lib/github-token-resolution.js(the existing "separately-installable CLIs" rationale to weigh against)#6114-#6117(the GitHub App device-flow auth work this epic builds on, not duplicates)Boundaries
maintainer-onlyuntil both sub-specs land a real decision — this is architecture and privacy-boundary judgment, not mechanical engineering.