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

GRAFOMEM CGR Capture

作者:GNS-Foundationバージョン 0.1.0i★ –iパソコンで動く
レジストリ名com.grafomem/cgr-capture

インストール

概要

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

Record agent judgments and their real outcomes on GRAFOMEM Cloud. Capture now, score later.

PopNx MCPの3つの柱

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

できること

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

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: その他
  • 入力が必要なもの:GRAFOMEM_CGR_TENANT_KEY, GRAFOMEM_CGR_TENANT

インストール

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

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • 自分で入力するもの: GRAFOMEM_CGR_TENANT_KEY, GRAFOMEM_CGR_TENANT, GRAFOMEM_CGR_ROLE_KEYS_JSON, GRAFOMEM_CGR_ROLE_KEYS, GRAFOMEM_CGR_FORBIDDEN_TENANTS, GRAFOMEM_API

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • PyPIPythonのuvのインストール(uvxコマンドに必要)

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

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

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

{
  "mcpServers": {
    "cgr-capture": {
      "command": "uvx",
      "args": [
        "grafomem-cgr"
      ],
      "env": {
        "GRAFOMEM_CGR_TENANT_KEY": "your-value",
        "GRAFOMEM_CGR_TENANT": "your-value",
        "GRAFOMEM_CGR_ROLE_KEYS_JSON": "your-value",
        "GRAFOMEM_CGR_ROLE_KEYS": "your-value",
        "GRAFOMEM_CGR_FORBIDDEN_TENANTS": "your-value",
        "GRAFOMEM_API": "your-value"
      }
    }
  }
}

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

claude mcp add cgr-capture --env GRAFOMEM_CGR_TENANT_KEY=your-value --env GRAFOMEM_CGR_TENANT=your-value --env GRAFOMEM_CGR_ROLE_KEYS_JSON=your-value --env GRAFOMEM_CGR_ROLE_KEYS=your-value --env GRAFOMEM_CGR_FORBIDDEN_TENANTS=your-value --env GRAFOMEM_API=your-value -- uvx grafomem-cgr

動かす前に、空欄の値を入力してください。

Cursorで開く

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

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

{
  "mcpServers": {
    "cgr-capture": {
      "command": "uvx",
      "args": [
        "grafomem-cgr"
      ],
      "env": {
        "GRAFOMEM_CGR_TENANT_KEY": "your-value",
        "GRAFOMEM_CGR_TENANT": "your-value",
        "GRAFOMEM_CGR_ROLE_KEYS_JSON": "your-value",
        "GRAFOMEM_CGR_ROLE_KEYS": "your-value",
        "GRAFOMEM_CGR_FORBIDDEN_TENANTS": "your-value",
        "GRAFOMEM_API": "your-value"
      }
    }
  }
}

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

VS Codeで開く

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

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

{
  "servers": {
    "cgr-capture": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "grafomem-cgr"
      ],
      "env": {
        "GRAFOMEM_CGR_TENANT_KEY": "your-value",
        "GRAFOMEM_CGR_TENANT": "your-value",
        "GRAFOMEM_CGR_ROLE_KEYS_JSON": "your-value",
        "GRAFOMEM_CGR_ROLE_KEYS": "your-value",
        "GRAFOMEM_CGR_FORBIDDEN_TENANTS": "your-value",
        "GRAFOMEM_API": "your-value"
      }
    }
  }
}

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

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

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

自分で入力する値

  • GRAFOMEM_CGR_TENANT_KEY 秘密 必須 env
    Your GRAFOMEM Cloud tenant API key (X-API-Key). Needs decisions:read for the durability guard.
  • GRAFOMEM_CGR_TENANT 必須 env
    The tenant id you expect that key to resolve to. If the key resolves to any other tenant, every write is refused.
  • GRAFOMEM_CGR_ROLE_KEYS_JSON env
    Role handles to public agent_key (64-hex Ed25519), inline as JSON. Example: {"cc-builder@acme":"<64-hex>"}. Use this or GRAFOMEM_CGR_ROLE_KEYS.
  • GRAFOMEM_CGR_ROLE_KEYS env
    Path to a JSON file with the same role-handle to public agent_key mapping. Use this or GRAFOMEM_CGR_ROLE_KEYS_JSON.
  • GRAFOMEM_CGR_FORBIDDEN_TENANTS env
    Comma-separated tenant ids to always refuse, even if pinned by mistake. Put your production tenant here.
  • GRAFOMEM_API env
    GRAFOMEM Cloud base URL. Defaults to https://api.grafomem.com.

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

できること

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

基本チェックi

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

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名はドメイン grafomem.com で確認済みです(レジストリがドメインの所有を確認しています)

  • … 未チェック

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

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

  • … 未チェック

    ライセンスがある

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

  • – 対象外

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

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

  • – 対象外

    OAuthでサインイン

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

  • … 未チェック

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

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

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

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

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

よくある質問

GRAFOMEM CGR Captureは安全ですか?

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

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

入力が必要なもの:GRAFOMEM_CGR_TENANT_KEY, GRAFOMEM_CGR_TENANT

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

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

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

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

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

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

代わりに使えるものは?

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

代わりの候補

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

カードの見方:★ 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昨日更新
インストール

作者のREADME

READMEを開く

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

grafomem-cgr

An MCP server that lets a coding agent record its own judgments and how they turned out, against your GRAFOMEM Cloud tenant.

The model is capture now, score later. Every time your agent makes a call it could be wrong about — "this deploy is safe", "this scan is clean", "this review finding is real" — it records the judgment. Later, when reality settles, it records the outcome. The two are joined by a work_item_id you choose. What accumulates is an append-only, attributable record of judgments and their results.

This package is the capture half only. It writes to your tenant; it does not compute, serve, or display scores.

cgr.cosign.v1 verifier (optional extra)

Beside the capture client, this package also ships a reference verifier for the cgr.cosign.v1 two-party co-signature envelope — grafomem_cgr.cosign_verify.verify(record, registry, ledger, trusted_issuers), implementing docs/cgr/cgr-cosign-v1-spec.md §8 (amended by decisions 0010 and 0011). trusted_issuers is required (§8.2a issuer pinning): a collection of issuer key ids with no default and no trust-everything path — omitting it or passing an empty set rejects, rather than trusting the record's self-declared issuer. It is the second, independent reference implementation (the first is @gns-foundation/cgr-verify, JS); both pass the same 28-vector conformance corpus at conformance/cgr-cosign-v1/ with zero verdict disagreements. Install its deps with the extra:

pip install grafomem-cgr[verify]      # rfc8785 + cryptography

Capture does not depend on it; the extra is verifier-only.

What it is not

  • It does not score anything at capture time, and it does not read scores back into your session.
  • It does not make your agent safer or gate anything. Nothing is blocked, approved, or prevented.
  • It is not a compliance, audit, or security product.
  • Scoring on GRAFOMEM Cloud is single-dimension today: all judgment/certify decisions score under one dimension regardless of domain. The domain you pass is stored durably per decision (see below), so it can be attributed later — but it is not scored separately yet.

Requirements

A GRAFOMEM Cloud account. The free tier is sufficient — expected volume is a handful of decisions per day. Note that governed decisions meter as real usage on your plan; the server prints your current usage on startup so this is never a surprise.

Install & configure

One command, plus environment variables — no repo checkout, no launcher script.

Claude Code:

claude mcp add grafomem-cgr --scope user \

--env GRAFOMEM_CGR_TENANT_KEY=sk_your_api_key \ --env GRAFOMEM_CGR_TENANT=your_tenant_id \ --env GRAFOMEM_CGR_ROLE_KEYS_JSON='{"cc-builder@acme":"<64-hex public key>"}' \ -- uvx grafomem-cgr

Or any MCP client that reads a JSON config:

{

"mcpServers": { "grafomem-cgr": { "command": "uvx", "args": ["grafomem-cgr"], "env": { "GRAFOMEM_CGR_TENANT_KEY": "sk_your_api_key", "GRAFOMEM_CGR_TENANT": "your_tenant_id", "GRAFOMEM_CGR_ROLE_KEYS_JSON": "{\"cc-builder@acme\":\"<64-hex public key>\"}" } } } }

Environment
VariableRequiredMeaning
GRAFOMEM_CGR_TENANT_KEYyesYour tenant's X-API-Key. Needs decisions:read for the durability guard.
GRAFOMEM_CGR_TENANTyesThe tenant id you expect that key to resolve to. If the key resolves anywhere else, every write is refused.
GRAFOMEM_CGR_ROLE_KEYS_JSONone ofRole handles → public agent_key, inline as JSON.
GRAFOMEM_CGR_ROLE_KEYSthese twoSame mapping, as a path to a JSON file.
GRAFOMEM_CGR_FORBIDDEN_TENANTSnoComma-separated tenant ids to always refuse, even if pinned by mistake. Put your production tenant here.
GRAFOMEM_APInoBase URL. Defaults to https://api.grafomem.com.
Role keys

A role handle (cc-builder@acme) is the identity a judgment is attributed to. Its agent_key is a stable Ed25519 public key, 64 hex characters — the subject the record binds to. Generate one per role:

openssl genpkey -algorithm Ed25519 -out cc-builder.pem

openssl pkey -in cc-builder.pem -pubout -outform DER | tail -c 32 | xxd -p -c 64

Keep the private half. This version does not use it — it binds to the public key only — but per-decision proof-of-possession is planned hardening, and holding the private key is what will let you prove the identity is yours.

Tools

`cgr_record_decision` — record a judgment.

arg
work_item_idstable join key you choose (PR number, task id, run id)
agent_handleone of your configured role handles
domaindeploy-verification \security-scan \adversarial-review
decisioncertify \reject
verifiability_tagjudgment (default) \rule
reason_code, reason_textoptional
agent_confidenceoptional, accepted but not yet persisted — see below

agent_confidence is accepted by the tool schema for forward compatibility but is not currently written to the decision record. Don't rely on it being stored.

Only judgment + certify moves a score. A rule decision is deterministic and carries no reputational weight — tag honestly.

`cgr_record_outcome` — record how it turned out.

arg
work_item_idthe same join key used at decision time
resulta result label, e.g. deploy_succeeded, ci_failed, vuln_found, review_confirmed
sourceoptional provenance string

An unrecognised `result` is a deliberate no-op. The decision stays pending rather than being resolved on a guess — falsely resolving a decision corrupts the record permanently. Mapped labels are: deploy_succeeded, deploy_healthy, ci_passed, migration_applied, merge_landed, pr_merged, scan_clean, no_vuln_confirmed, review_confirmed, finding_correct, bug_confirmed (success); deploy_failed, deploy_rolled_back, migration_failed, ci_failed, merge_reverted, vuln_found, secret_found, review_refuted, finding_wrong, bug_not_real (failure).

Safety properties

  • Tenant pinning. You declare the tenant up front. The pin is enforced at startup *and* re-checked against the tenant the API actually resolved on every decision response — so a rotated or mistaken key cannot quietly write somewhere else.
  • Denylist. GRAFOMEM_CGR_FORBIDDEN_TENANTS refuses named tenants outright.
  • Key custody. The caller picks a role *handle*; the server injects that role's key. A tool call can never supply an arbitrary key or target another tenant.
  • Fail-open. If the server is misconfigured it exits non-zero and simply doesn't load. Your session continues unblocked, with no tools registered. A refused tool call returns an error as normal tool output rather than crashing the MCP server.
  • Domain durability. domain is sent as a dedicated field and stored server-side, per decision, in the never-encrypted CGR-readable decision parameters as cgr_domain — in the signed decision record, not in a client-side log. selftest includes a durability guard that re-reads the decision it just wrote and aborts loudly if cgr_domain did not round-trip, rather than silently recording a domainless decision.

CLI

grafomem-cgr                 # run the stdio MCP server (the default)

grafomem-cgr setup # register your role identities on the tenant (idempotent) grafomem-cgr selftest --handle cc-builder@acme --domain deploy-verification

selftest closes the loop once — decision → durability guard → outcome → score read — and prints the movement and the meter. Run it before wiring the server into a session.

Links

MIT licensed.

PopNxに聞く