Skip to content

Epic: MCP platform — shared-core decision + usage telemetry #6226

Description

@JSONbored

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:

  1. 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.
  2. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    maintainer-onlyOwner-only work — yields no Gittensor points.roadmapOn the Wave-2 agent-layer roadmap board (project 9)

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions