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

Dataset Join & Merge

作者:Nero-Engineバージョン 0.1.0i★ –iクラウドで動く
レジストリ名io.github.Nero-Engine/dataset-join-merge

インストール

概要

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

Join two lists of JSON rows on a key, like SQL or VLOOKUP: left, inner, full, anti joins, union.

PopNx MCPの3つの柱

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

できること

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

  • 接続方法: クラウドで動く
  • トランスポート: Streamable HTTP
  • カテゴリ: データベース・データセット

インストール

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

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
  • レジストリには、入力が必要なキーは載っていません。

必要なもの

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

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

ウェブ、デスクトップ、モバイルのClaudeで使えます:

  1. Settings → Connectors を開く
  2. Add custom connector を押す
  3. 下のアドレスを貼り付けて Add を押す
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Add2https://…3
https://dataset-join-merge.nerolabs.workers.dev/mcp

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

claude mcp add --transport http dataset-join-merge https://dataset-join-merge.nerolabs.workers.dev/mcp

Cursorで開く

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

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

{
  "mcpServers": {
    "dataset-join-merge": {
      "url": "https://dataset-join-merge.nerolabs.workers.dev/mcp"
    }
  }
}

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

VS Codeで開く

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

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

{
  "servers": {
    "dataset-join-merge": {
      "type": "http",
      "url": "https://dataset-join-merge.nerolabs.workers.dev/mcp"
    }
  }
}

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

ChatGPTがつなげるのは、インターネット上のサーバーだけです:

  1. ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
  2. Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
  3. 下のアドレスを貼り付け、名前を付けて保存する
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Create2https://…3
https://dataset-join-merge.nerolabs.workers.dev/mcp

メニューの名前は、プランや時期によって少し違うことがあります。

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

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

できること

このサーバーのツール一覧はまだ読み取っていません。エンドポイントは順番にチェックしています。

基本チェックi

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

  • ✓ 合格

    作者とリポジトリが一致

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

  • … 未チェック

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

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

  • … 未チェック

    ライセンスがある

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

  • … 未チェック

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

    まだチェックしていません。エンドポイントは順番にチェックしています

  • … 未チェック

    OAuthでサインイン

    まだチェックしていません。エンドポイントは順番にチェックしています

  • … 未チェック

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

    まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります

データベース・データセットのほかのサーバーとの比較i

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

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

よくある質問

Dataset Join & Mergeは安全ですか?

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

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

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

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

作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。

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

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

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

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。

代わりに使えるものは?

同じカテゴリには:Supabase, MongoDB MCP Server, Elasticsearch MCP Server

代わりの候補

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

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

Supabase

作者:supabase

MCP server for interacting with the Supabase platform

パソコンでもクラウドでも★ 2,993Apache-2.0今日更新
インストール

作者のREADME

READMEを開く

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

Dataset Join & Merge (Remote MCP Server)

Join two lists of JSON rows on a shared key, like a SQL join or a spreadsheet VLOOKUP, in a single tool call. Hand it a main list and a lookup list, name the key, pick a join type, and it hands back one combined list plus an exact account of how many rows matched on each side and why the rest did not.

Built for AI agents. No install, no API key, no signup. Connect by URL and call it.

https://dataset-join-merge.nerolabs.workers.dev/mcp

Free to use while in early access.

What it does

  • Seven join types. left keeps every left row and adds the matching right fields (the VLOOKUP and enrichment case, and the default). inner keeps only the overlap. right keeps every right row. full keeps everything from both sides. leftAnti returns left rows with no match on the right ("which of these leads are not in the CRM yet?"). rightAnti is the reverse. union stacks both lists, no key needed.
  • Keys that match the way real data looks. By default keys match case-insensitively with surrounding and repeated spaces ignored, and 123 matches "123", so " Ana@Example.com" from a scraper finds "ana@example.com" in a billing export. Set keyMatching to exact for strict matching.
  • Different key names on each side. email on the left, contact_email on the right. Composite keys work too: ["firstName", "lastName"].
  • Control over what comes across. Copy only chosen right fields, and decide what happens when both sides have a field with the same name: keep both (the right one becomes right_status), keep the left value, or overwrite with the right value.
  • SQL or VLOOKUP behaviour for duplicate keys. multipleMatches: "all" returns one row per matching pair; "first" uses only the first matching right row, so each left row appears once.

It is honest about what it could not match. Every row is tagged _joinStatus (matched, left_only, right_only) and _matchCount, and the summary reports match rates plus warnings for rows missing the key, duplicate keys on the right and key fields that exist on no row at all (usually a typo).

Tools

ToolWhat it does
list_capabilitiesLists every join type, matching mode, conflict strategy and duplicate-key mode, the fields added to each row, and the row limits. Processes no data.
join_rowsJoins leftRows and rightRows on the key fields you name and returns the joined rows plus a summary.

Connect

Claude Code

claude mcp add --transport http dataset-join-merge https://dataset-join-merge.nerolabs.workers.dev/mcp

Claude Desktop / claude.ai: Settings, Connectors, Add custom connector, paste the URL above.

Cursor, Windsurf, VS Code and other MCP clients

{

"mcpServers": { "dataset-join-merge": { "url": "https://dataset-join-merge.nerolabs.workers.dev/mcp" } } }

Example

Four scraped leads on the left, three billing records on the right. The emails differ in case and spacing, and the key has a different name on each side:

{

"leftRows": [ {"email": "Ana@Example.com ", "name": "Ana Silva", "status": "lead"}, {"email": "ben@example.com", "name": "Ben Okafor", "status": "lead"}, {"email": "cara@example.com", "name": "Cara Lind", "status": "lead"}, {"email": "dev@example.com", "name": "Dev Patel", "status": "lead"} ], "rightRows": [ {"contact_email": "ana@example.com", "plan": "Pro", "mrr": 49, "status": "active"}, {"contact_email": "BEN@EXAMPLE.COM ", "plan": "Starter", "mrr": 19, "status": "trial"}, {"contact_email": "erin@example.com", "plan": "Enterprise", "mrr": 499, "status": "active"} ], "leftKeyFields": ["email"], "rightKeyFields": ["contact_email"], "joinType": "left" }

Every lead comes back, the two customers enriched with their plan, and both status fields kept:

{

"rows": [ {"email": "Ana@Example.com ", "name": "Ana Silva", "status": "lead", "plan": "Pro", "mrr": 49, "right_status": "active", "_joinStatus": "matched", "_matchCount": 1}, {"email": "ben@example.com", "name": "Ben Okafor", "status": "lead", "plan": "Starter", "mrr": 19, "right_status": "trial", "_joinStatus": "matched", "_matchCount": 1}, {"email": "cara@example.com", "name": "Cara Lind", "status": "lead", "_joinStatus": "left_only", "_matchCount": 0}, {"email": "dev@example.com", "name": "Dev Patel", "status": "lead", "_joinStatus": "left_only", "_matchCount": 0} ], "summary": { "leftRecordCount": 4, "rightRecordCount": 3, "joinType": "left", "keyMatching": "normalized", "multipleMatches": "all", "leftKeyFields": ["email"], "rightKeyFields": ["contact_email"], "counts": {"matchedRows": 2, "passthroughRows": 2, "leftRowsMatched": 2, "rightRowsMatched": 2, "leftRowsUnmatched": 2, "rightRowsUnmatched": 1}, "leftMatchRate": 0.5, "rightMatchRate": 0.667, "outputRowCount": 4, "warnings": [] } }

Change joinType to leftAnti and the same call returns only Cara and Dev, the leads with no billing record.

Limits

  • Up to 500 rows per call, counting leftRows and rightRows together. For a left, inner or leftAnti join on bigger lists, split leftRows across several calls and send the same rightRows with each.
  • Up to 500 output rows per call. Only a many-to-many join (the same key repeated on both sides, with multipleMatches set to all) can return more rows than went in. That call is refused with the predicted row count and what to change, never cut short: multipleMatches: "first" always fits.

Anything over a limit returns a clear message rather than failing silently.

Privacy

Your rows are processed in memory and never stored. To see which tools get used, each call records the tool name, row counts, whether it succeeded, the client name your app reports, the country and a one-way hashed caller ID. Your data, your arguments and your IP address are never kept in that log.

Also available

The same engine runs on the Apify Store as Dataset Join & Merge, which also reads Apify datasets, CSV, Excel and JSON files and Google Sheets by URL on either side, handles up to 100,000 rows per side, exports the result as CSV or Excel, appends it to a named dataset that builds up across runs, and can POST it to a webhook.

Built by Nero Labs.

PopNxに聞く