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

Fittest

作者:Pavel-Tkバージョン 0.1.1i★ –iクラウドで動く
レジストリ名io.github.Pavel-Tk/fittest

インストール

概要

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

Three ML interatomic potentials check a molecule: trust (Beta-posterior score, 90% CI) or DFT.

PopNx MCPの3つの柱

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

できること

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

  • 接続方法: クラウドで動く
  • トランスポート: Streamable HTTP
  • カテゴリ: その他

インストール

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

インストールの前に

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

必要なもの

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

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

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

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

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

claude mcp add --transport http fittest https://fittest-mcp.westus2.cloudapp.azure.com/mcp

Cursorで開く

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

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

{
  "mcpServers": {
    "fittest": {
      "url": "https://fittest-mcp.westus2.cloudapp.azure.com/mcp"
    }
  }
}

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

VS Codeで開く

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

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

{
  "servers": {
    "fittest": {
      "type": "http",
      "url": "https://fittest-mcp.westus2.cloudapp.azure.com/mcp"
    }
  }
}

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

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

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

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

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

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

できること

前回チェックしたときにサーバーが応答しなかったため、ツールを読み取れませんでした。

基本チェックi

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

  • ✓ 合格

    作者とリポジトリが一致

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

  • … 未チェック

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

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

  • … 未チェック

    ライセンスがある

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

  • ✕ 不合格

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

    チェックしたとき、6秒以内に応答がありませんでした

  • – 対象外

    OAuthでサインイン

    チェックしたとき、6秒以内に応答がありませんでした

  • … 未チェック

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

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

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

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

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

よくある質問

Fittestは安全ですか?

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

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

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

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

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

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

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

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

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

代わりに使えるものは?

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

代わりの候補

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

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

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

作者:formulahendry初期↓ 66/週★ 44014 か月前更新

パソコンで動く

Remote Desktop Commander

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

作者:desktop-commander成長中★ 2114 日前更新

クラウドで動く✓ desktopcommander.app

agentPickup

Find pickup shops near you, order, pay by card or USDC (x402), and get the QR to collect in person.

作者:Tokenise-au成長中↓ 1160/週今日更新

パソコンでもクラウドでも

作者のREADME

READMEを開く

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

Fittest

The fittest survive, not the smartest. An evolving agent council that decides what gets compute and lab time.

Intelligence is abundant; ground truth is not. ML models screen candidate molecules and materials by the million, but only a few get a high-fidelity calculation (DFT) or a lab experiment. Fittest is a council of three independent foundation machine-learned interatomic potentials (MLIPs: MACE-MPA-0, AIMNet2, Orb-v3) and four role agents (Skeptic, Calibrator, Oracle, Curator) that share one log. For every structure it decides which answer to serve, how far to trust it, and which structures get ground truth. In this repo ground truth is DFT read from Transition1x (lookups, not live calculations); the decision is the same for lab time.

The project asks two questions, each tested against baselines or a pre-registered rule:

  1. What if the models decide as a council? Their disagreement tells the council when to be skeptical (§2.3, §3.3).
  2. Can the council evolve to give better predictions? Yes, once the test for new members was fixed: fine-tuned children replace their parents (§2.5).

Built at ScienceClaw 2026 (MIT Media Lab) for the NVIDIA ALCHEMI challenge, on NVIDIA ALCHEMI Toolkit 0.3.0-rc. Formerly TrustSwarm; the old GitHub URL redirects here.

  • Code: this repo (fittest/ package, MIT licence)
  • Hosted MCP server: https://fittest-mcp.westus2.cloudapp.azure.com/mcp
  • Authoritative numbers, all generated from the result files: results/RESULTS.md (Idea 1), results/evolution/SUMMARY.md (Idea 2) and results/story_numbers.json (scripts/story_numbers.py: the critic values, run F's lineages and its absolute errors)

TL;DR

  • Problem: the best model fails silently where it matters. On 287 held-out Transition1x reactions every model's force error peaks at the transition state, the top of the energy hill that sets the reaction rate. AIMNet2 leads at the reactant (median 0.22 vs 0.35 eV/Å for Orb) and loses its lead at the transition state (0.46 vs 0.47), with no warning. Its own seed ensemble does not warn either: its spread is 2.4× smaller than its error.
  • The council: each decision has an owner, no central planner. Three models answer independently and never see each other's answers. The Calibrator keeps the track record and chooses what to serve, the Skeptic audits trusted answers at random and vetoes, the Oracle spends the ground-truth budget, and the Curator breeds and retires members. They coordinate only through an append-only log, so every decision replays. The agents are deterministic programs, not LLMs; an LLM agent uses the whole council as one tool (MCP).
  • Idea 1: decide as a council (leak-free split, 200 DFT label lookups per arm).
  • Disagreement between independent models flags when the best model is wrong, with no labels: AUROC 0.917 against "AIMNet2 wrong" (pool split, 1,672 frames). Copies of one model are overconfident: their spread is 2.4–36× smaller than their error.
  • Served force RMSE 0.206 eV/Å vs 0.286 for the best baseline (−28%). The council discovered from 200 labels that averaging AIMNet2 and Orb is the best answer; that average, picked in hindsight with eval labels, is as good (0.202).
  • Adding one role, the Skeptic's random audits of trusted answers, cuts calibration error (ECE) from 0.370 to 0.079 (4.6×).
  • Negative: the council's own risk score ranks its remaining errors worse than the simple baselines (AUROC 0.73 vs 0.80–0.87).
  • The worst model is the best critic. As an answerer MACE-MPA-0 is wrong on 99.9% of eval frames (Orb 91.3%, AIMNet2 57.2%). As a critic it is the only foundation model whose removal makes the council worse at spotting mistakes: mean ΔAUROC +0.040 over 491 fitness checks (AIMNet2 −0.067, Orb −0.037).
  • Idea 2: let the council evolve (pre-registered, failures included). The Curator breeds fine-tuned children on the labels the council already paid for; a child must beat its parent on labels it never trained on, and members that add nothing are retired. The first four designs (runs A–D) failed their rule or were not confirmed. A diagnosis showed why: the test's energy check on a few labels was noise and threw out the best children. With a force-only test (run F, 12 new seeds, 800 lookups for both arms) the evolving council beats the static council in 12 of 12 seeds: −0.026 eV/Å [−0.030, −0.021] (−12%), and −14% on 2,475 structures from new chemical formulas that no run had read. In total that is 0.181 vs 0.286 eV/Å against the best Idea 1 baseline on the same eval frames (−37%), and below the hindsight average. 108 children were bred, 43 sit in the final councils, and 32 of the 36 foundation models were retired. Caveat: growing the council without selection (run E) already gives −0.018 of the −0.026; selection's own share is not isolated yet.
  • Use it now. Add the hosted MCP server to Claude Code: claude mcp add --transport http fittest https://fittest-mcp.westus2.cloudapp.azure.com/mcp, then ask *"Use fittest to check whether I can trust an ML potential on this water molecule: O 0 0 0, H 0.96 0 0, H -0.24 0.93 0."* Structures are never stored (logging policy).

Contents

  1. Use it now — MCP server, local install, Python API, ALCHEMI hook
  2. How it works — the problem, the council, Idea 1, the worst model as critic, Idea 2 (evolution), ALCHEMI usage
  3. Validation — data, split, metrics, the Idea 1 ablation, self-repair
  4. What failed and limitations — and next steps
  5. Reproduce
  6. Repo map, privacy, licence, acknowledgements

1. Use it now

1.1 Hosted MCP server (no install)

fittest-mcp exposes the council to any MCP client over streamable HTTP. The three model agents (MACE-MPA-0, AIMNet2, Orb-v3) run as warm CPU processes on an Azure VM, and their disagreement is turned into a verdict with the Calibrator state learned in the final run (fittest/snapshots/trust_snapshot.json, identical to results/trust_snapshot.json). Landing page: https://fittest-mcp.westus2.cloudapp.azure.com/, public counts at /stats, health at /health. Full guide: docs/MCP.md.

toolinputreturns
check_structuresstructures: XYZ text (single or multi-frame; bare atoms on lines or separated by ,/;), one {Z or symbols, R} object, or a list mixing both (Å); include_forces (default false)per structure: verdict (trust / send_to_dft) and verdict_reasons; trust_score with trust_score_90ci and labels_behind_score; recommended model or blend and its served_members; served_energy_eV and reference_energy_eV (one fixed model, AIMNet2, for the whole batch); max/mean force (eV/Å); sigma_F vs tau; per-model energy and max force; domain_warning. A structure that cannot be parsed gets its own {index, error} entry and the rest of the batch is still scored
explainone structurethe same verdict, by the same rule, with the reason in words; σ_F vs τ; the Calibrator bucket (σ_F range, mean-force range, oracle labels in it) and the posterior P(correct) with interval for every candidate in it; each member's deviation from the committee mean; pairwise force RMS; the most divergent member; the three most uncertain atoms
swarm_statusnoneanswerers (MACE-MPA-0, AIMNet2, Orb-v3, live status, reputation), critic (Skeptic), coordinators (Calibrator, Oracle, Curator); the ledger; the calibration domain, τ, the verdict rule and the supported elements; the evolution family trees of runs A, B and C (family_tree.json in results/evolution/, results/evolution_aimnet/ and each results/evolution_c/ /)
usage_statsnoneusers (definition), total / external / internal calls, calls per tool, first and last call

Limits: ≤ 20 structures per call, ≤ 100 atoms each, non-periodic, coordinates within ±1000 Å, no atoms closer than 0.3 Å; element symbols must be exact (Cl or cl; PDB-style C1 is fine, ambiguous CA or HE1 is an error); per-client rate limit (burst 20, then 1 call per 2 s) plus a per-IP limit; 120 s per request; model evaluations are serialized.

The verdict rule. One rule feeds check_structures, explain and the usage counts. A structure gets trust only if all four hold:

  1. every model agent supports its elements (AIMNet2 sets the limit; the full committee covers H B C N O F Si P S Cl As Se Br I), otherwise send_to_dft with reason unsupported_elements and no trust score;
  2. the forces do not all vanish (max |F| < 0.05 eV/Å for every model means symmetry or exact equilibrium, where disagreement carries no information);
  3. σ_F < τ;
  4. trust_score ≥ 0.5.

Otherwise the verdict is send_to_dft, with every failing condition listed in verdict_reasons. τ = 0.620 eV/Å is fixed: it is the 70th percentile of σ_F on the round-0 pool, which the Calibrator's threshold rule never moved. trust_score is the Calibrator's Beta posterior mean of P(served answer correct) for the served candidate in the structure's (σ_F, mean |F|) bucket, built from DFT oracle labels on Transition1x with prior Beta(2, 1), so it is never exactly 1. It comes with trust_score_90ci (the 90% credible interval) and labels_behind_score (the DFT labels in that bucket); a bucket with few labels gives a wide interval, so read the score with it. "Correct" means force RMSE ≤ 0.25 eV/Å and relative energy error ≤ 0.25 eV (relative to the reaction's reactant). The ECE 0.080 in §3.3 is for arm D's risk score (max of the isotonic P(served wrong) and the Skeptic's p_S); the calibration of this per-bucket trust_score has not been measured beyond the 12-frame spot check below.

Claude Code

claude mcp add --transport http fittest https://fittest-mcp.westus2.cloudapp.azure.com/mcp

Cursor (~/.cursor/mcp.json)

{ "mcpServers": { "fittest": { "url": "https://fittest-mcp.westus2.cloudapp.azure.com/mcp" } } }

Claude Desktop / claude.ai: Settings → Connectors → Add custom connector → https://fittest-mcp.westus2.cloudapp.azure.com/mcp.

Example prompt: *"Use fittest to check whether I can trust an ML potential on this water molecule: O 0 0 0, H 0.96 0 0, H -0.24 0.93 0."* Atoms may be separated by newlines, commas or semicolons. In the Round-2 verification run this prompt, used verbatim, gave trust, trust score 0.857 (90% CI 0.61–0.99, 4 labels behind it), recommended AIMNet2, σ_F = 0.378 eV/Å below τ = 0.620 eV/Å (docs/MCP.md, verification log).

Hosted CPU vs the GPU run. On the 12 held-out Transition1x frames of results/service_demo.xyz the hosted server's σ_F ≥ τ flags agree 12/12 with the earlier GPU run (results/service_demo.json), with max |Δσ_F| = 0.0005 eV/Å. Under the verdict rule 7 of the 12 are trusted and none of the trusted frames is DFT-wrong; the earlier τ-only rule trusted 2 DFT-wrong frames.

Domain. The Calibrator learned from gas-phase C/H/N/O Transition1x reactions with at most 7 heavy atoms, including transition states and NEB paths. A domain_warning is added for elements outside C/H/N/O that the committee still supports, large

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

PopNxに聞く