プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Loopback

作者:joshidikshantバージョン 0.9.4i★ –iパソコンで動く
レジストリ名io.github.joshidikshant/loopback

インストール

概要

作者による説明(英語の原文)

Feedback bus for coding agents: pin feedback on the app you're building; a fix turns the pin green

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: その他

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • レジストリには、入力が必要なキーは載っていません。

必要なもの

  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "loopback": {
      "command": "npx",
      "args": [
        "-y",
        "loopback-mcp-server"
      ]
    }
  }
}

ターミナルでこれを実行します

claude mcp add loopback -- npx -y loopback-mcp-server

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "loopback": {
      "command": "npx",
      "args": [
        "-y",
        "loopback-mcp-server"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "loopback": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "loopback-mcp-server"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント joshidikshant で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

その他のほかのサーバーとの比較i

  • このカテゴリのほかの32371件のうち0%よりスターが多い
  • このカテゴリのほかの32371件のうち21%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの32371件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Loopbackは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.9.4)がレジストリに届いたのは3 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Spec Driven Development, Remote Desktop Commander, DepTime

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Remote Desktop Commander

作者:desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

クラウドで動く★ 211昨日更新
インストール

DepTime

作者:cschmertz

What changed in a Python library, in which release, and what replaces it. Answered locally.

パソコンで動く今日更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

Loopback

Pin feedback on the app you're building. Any coding agent claims it. The pin turns green when the fix is verified.

Loopback is the interactive feedback layer between real product usage and your coding agents: one script tag makes the app you're running locally commentable (Vercel-toolbar-style toolbar, element-anchored pins; deployed public sites go via the /ingest rails instead — see surface compatibility), every pin auto-captures the *functional* context — failing requests with response bodies, console trail, the route journey that led there, LLM run metadata, typed repro steps — and lands in one project-tagged queue that Claude Code, Codex, and Gemini CLI all work over MCP. When an agent's fix is verified, the pin turns green on the page, live.

https://github.com/user-attachments/assets/1e1b2f9f-0130-4b1d-a0dd-3aff8d801d5a

![The loop, closed: a green verified pin on the form claude-code fixed (PR linked), an amber open pin on the AI answer, and the Loopback panel listing both]

*Seeded demo capture (generated by scripts/screenshot.mjs): the contact form's backend bug pinned, claimed by claude-code, marked fixed with a linked change, verified — pin and badge green. The wrong AI answer is still amber/open.*

Why

Coding agents can fix anything you can describe — but the loop back from real usage is missing. You notice a broken flow, screenshot it, re-describe it in a prompt, paste console output, explain which project it belongs to. Every time, for every agent. Vercel's comments have no public API; Claude Design's anchored comments are artifact-scoped; error trackers don't know your queue.

Loopback is that missing loop, built as a hub:

  • One instance, all projects. Every item is tagged with a project slug in one shared SQLite DB (~/.loopback/loopback.db). Agents registered once per machine; consuming repos add only a widget tag and a slug.
  • One queue, all agents. MCP is the interface, so Claude Code, Codex, and Gemini CLI are peers — same tools, same playbook, same audit trail.
  • A pin is an anchor, not a scope. Pin a "broken" contact form and the agent gets the failing POST with its 500 response body — a frontend pin carries the backend root cause. Pin an AI answer and the run metadata (run_id, model, trace_url) rides along.
            CAPTURE                          THE HUB                            AGENTS

┌───────────────────────────┐ ┌─────────────────────────────┐ ┌─────────────────────────┐ │ widget pin on any app │──►│ loopback-mcp-server │◄──│ Claude Code │ │ · console + network ride │ │ one shared SQLite DB │ │ Codex (peers) │ │ · 500 bodies captured │ │ ~/.loopback/loopback.db │ │ Gemini CLI │ │ · AI run context │ │ │ └────────────┬────────────┘ ├───────────────────────────┤ │ stdio (per-agent spawn) │ │ │ POST /ingest │──►│ --http on 127.0.0.1:7077 │ list → claim → fix → │ · CI hooks, cron, │ │ (required for widgets) │ link change → fixed → │ Sentry/PostHog pollers │ │ │ verify → resolve └───────────────────────────┘ └──────────────┬──────────────┘ │ │ │ pins turn green on the page ◄─────┴───── status write-back ◄──────┘

Run it per-invocation over stdio (each agent spawns it; same DB = same queue) or as one long-running `--http` service on 127.0.0.1:7077 (required for widgets — keep it alive with pm2/launchd/systemd: integrations/keep-alive.md).

Quickstart (see the whole loop in 2 minutes)

Requires Node ≥ 22.13 (built-in node:sqlite — zero native deps).

git clone https://github.com/joshidikshant/loopback && cd loopback

npm install # prepare script builds dist/ node dist/index.js --http # the hub, on 127.0.0.1:7077 node demo/serve.mjs # demo app on 127.0.0.1:5173 (broken backend + wrong AI answer)

Open http://127.0.0.1:5173 → submit the form (it fails politely) → ✦ Loopback → Pin feedback on an element → click the submit button → Send. The form shows the captured failed request. Then tell any connected agent *"work the feedback queue for acme-demo"* — or watch the item at http://127.0.0.1:7077/queue and be the agent yourself over MCP. When it's resolved, the open page announces it and the pin goes green.

Install once per machine

Register the MCP server + instructions once per agent; after this, new projects are a two-minute init. The copy-paste version — Claude Code (.mcp.json in your project, or ~/.claude.json for all projects):

{

"mcpServers": { "loopback": { "command": "npx", "args": ["-y", "loopback-mcp-server"] } } }

Codex and Gemini CLI take the same command/args in their own config — the server is the same binary over stdio. All three are equal citizens — full per-agent pages in integrations/:

AgentMCP registrationInstructions/skill channel
Claude Codeclaude mcp add --scope user loopback -- npx -y loopback-mcp-server — or the plugin: claude plugin marketplace add joshidikshant/loopback && claude plugin install loopback@loopback@AGENTS.md import in CLAUDE.md + skill at .claude/skills/loopback/ → claude.md
Codex~/.codex/config.toml: [mcp_servers.loopback] command/args (or project-scoped .codex/config.toml)AGENTS.md read natively + native SKILL.md at .agents/skills/loopback/ → codex.md
Gemini CLI~/.gemini/settings.json → mcpServers.loopbackAGENTS.md via context.fileName + @AGENTS.md in GEMINI.md + /loopback command → gemini.md

All three also accept the long-running instance over streamable HTTP (http://127.0.0.1:7077/mcp) instead of spawning — see the per-agent pages.

Integrate a new project (2 minutes)

  1. Central instance running (once per machine): loopback-mcp-server --http, kept alive per keep-alive.md.
  2. Paste the widget tag into the app, with your slug (template):
   <script src="http://127.0.0.1:7077/widget.js"

data-project="my-app" data-endpoint="http://127.0.0.1:7077">

3. **From the repo root:**
   npx loopback-mcp-server init --project my-app --write

One canonical playbook (integrations/instructions-src.md) is rendered into every agent's native mechanism: the AGENTS.md queue section (canonical; Codex + Gemini read it natively), @AGENTS.md imports in CLAUDE.md and GEMINI.md, the same SKILL.md installed for Claude (.claude/skills/) and Codex (.agents/skills/), MCP registration for all three (.mcp.json, .gemini/settings.json, .codex/config.toml), and a /loopback Gemini command. Merges are non-destructive and idempotent — re-run it anytime.

  1. In any of the three agents, say: *"work the feedback queue for my-app"* — or say nothing: the skill descriptions and AGENTS.md section make feedback-ish requests trigger the loop on their own.

Using it day to day

With the hub running (loopback-mcp-server --http), everything happens on two surfaces and one sentence to an agent:

I want to…Do this
Report something on a page with the widgetClick ✦ Loopback → Pin feedback on an element, click the thing, describe it. Failing requests, console, and AI run context attach themselves.
See the queuehttp://127.0.0.1:7077/queue — filter with ?project= , click a row for a quick read
Read everything on one itemClick its id → http://127.0.0.1:7077/queue/ . Deep-linkable: paste it to a teammate or an agent.
Comment or change status myselfOn the item view — plain forms, no agent needed
Get it fixedIn the repo, tell any agent: *"work the feedback queue for "*
Watch it closeThe pin on your page turns green and announces itself; the item shows the commit/PR
File from a script or CIPOST /ingest with {"project","type","title","body"}

Writes that change an item (comment, status) are same-origin only — see Security below.

Giving feedback *about* Loopback

Loopback is its own reference integration — it eats its own dog food, and so can you. Four ways in, from most to least convenient:

  1. Pin it on the queue page. With the hub running, open http://127.0.0.1:7077/queue — the capture widget is embedded there with data-project=loopback. Click ✦ Loopback → Pin feedback on an element, click whatever is wrong, describe it. Same loop as any other project.
  2. Tell an agent. In this repo (self-onboarded with its own init), say *"file feedback for loopback: "* — the skill and AGENTS.md section are already installed for Claude, Codex, and Gemini.
  3. `curl` it from anywhere:
   curl -X POST http://127.0.0.1:7077/ingest -H 'Content-Type: application/json' \

-d '{"project":"loopback","type":"ux","severity":"p2", "title":"…","body":"what happened / what you expected"}'

4. **GitHub issues** for anything a stranger should see:

https://github.com/joshidikshant/loopback/issues.

Then work it like any queue: *"work the feedback queue for loopback"*. Every Loopback defect in this repo's history was filed and closed exactly this way.

The dashboard

/queue is a React + shadcn app (dashboard/, built with the real shadcn CLI). Filter by clicking status tiles or any project / severity / type cell — filters compose and live in the URL, so every view is linkable. Open an item to read everything captured, edit it (title, body, severity, type — every change lands on the audit trail), comment, change status, and attach files.

Attachments declare *why* they exist, because that decides what an agent does:

IntentMeaning
`reference`Context for the fix — a screenshot, a spec, a "make it look like this". Read it, then leave it. It never ships.
`asset`A deliverable. The blob store is a transfer buffer: the item carries a target_path and the agent copies the file into the repo there and commits it.

Blobs live in ~/.loopback/blobs/ /, beside the DB rather than inside it, and agents get an absolute local path so they copy the file instead of decoding it out of the protocol.

The build output is committed to public/dashboard/, so npx loopback-mcp-server still needs no React, no Tailwind and no build step — the hub just serves files. npm run dashboard:build after changing dashboard/src; dashboard-gate fails CI if the committed build has drifted.

Design system (shadcn-compatible, zero dependencies)

Both surfaces — widget and /queue — are built from one token set in vanilla CSS that speaks shadcn/ui's contract (oklch variables, .dark, the multiplicative radius scale). No React, no Tailwind, no build step; drop design/tokens.css into any shadcn/v0 project and it themes from that project's palette.

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く