原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Crg

作者:n24q02m版本 3.31.0i★ –i在你的电脑上运行
注册名称io.github.n24q02m/crg

安装

概览

作者提供的说明(英文原文)

Token-efficient code review knowledge graph: semantic search and call-graph resolution.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 开发者工具
  • 你需要填写:HULL_EMBED_API_KEY, HULL_CHAT_API_KEY

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 需要你自己填写: EMBEDDING_MODELS, LOCAL_EMBEDDING_MODEL, LOCAL_RERANK_MODEL, LOCAL_EMBEDDING_DIM, LOCAL_EMBEDDING_MODEL_FILE, LOCAL_EMBEDDING_POOLING, LOCAL_EMBEDDING_NORMALIZE, HULL_EMBED_API_KEY, HULL_CHAT_API_KEY, EMBEDDING_BACKEND

标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。

你需要

  • PyPI已安装 Python 的 uv(用于 uvx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "crg": {
      "command": "uvx",
      "args": [
        "better-code-review-graph"
      ],
      "env": {
        "EMBEDDING_MODELS": "your-value",
        "LOCAL_EMBEDDING_MODEL": "your-value",
        "LOCAL_RERANK_MODEL": "your-value",
        "LOCAL_EMBEDDING_DIM": "your-value",
        "LOCAL_EMBEDDING_MODEL_FILE": "your-value",
        "LOCAL_EMBEDDING_POOLING": "your-value",
        "LOCAL_EMBEDDING_NORMALIZE": "your-value",
        "HULL_EMBED_API_KEY": "your-value",
        "HULL_CHAT_API_KEY": "your-value",
        "EMBEDDING_BACKEND": "your-value"
      }
    }
  }
}

在终端中运行这条命令

claude mcp add crg --env EMBEDDING_MODELS=your-value --env LOCAL_EMBEDDING_MODEL=your-value --env LOCAL_RERANK_MODEL=your-value --env LOCAL_EMBEDDING_DIM=your-value --env LOCAL_EMBEDDING_MODEL_FILE=your-value --env LOCAL_EMBEDDING_POOLING=your-value --env LOCAL_EMBEDDING_NORMALIZE=your-value --env HULL_EMBED_API_KEY=your-value --env HULL_CHAT_API_KEY=your-value --env EMBEDDING_BACKEND=your-value -- uvx better-code-review-graph

运行前请先填写空着的值。

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "crg": {
      "command": "uvx",
      "args": [
        "better-code-review-graph"
      ],
      "env": {
        "EMBEDDING_MODELS": "your-value",
        "LOCAL_EMBEDDING_MODEL": "your-value",
        "LOCAL_RERANK_MODEL": "your-value",
        "LOCAL_EMBEDDING_DIM": "your-value",
        "LOCAL_EMBEDDING_MODEL_FILE": "your-value",
        "LOCAL_EMBEDDING_POOLING": "your-value",
        "LOCAL_EMBEDDING_NORMALIZE": "your-value",
        "HULL_EMBED_API_KEY": "your-value",
        "HULL_CHAT_API_KEY": "your-value",
        "EMBEDDING_BACKEND": "your-value"
      }
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "crg": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "better-code-review-graph"
      ],
      "env": {
        "EMBEDDING_MODELS": "your-value",
        "LOCAL_EMBEDDING_MODEL": "your-value",
        "LOCAL_RERANK_MODEL": "your-value",
        "LOCAL_EMBEDDING_DIM": "your-value",
        "LOCAL_EMBEDDING_MODEL_FILE": "your-value",
        "LOCAL_EMBEDDING_POOLING": "your-value",
        "LOCAL_EMBEDDING_NORMALIZE": "your-value",
        "HULL_EMBED_API_KEY": "your-value",
        "HULL_CHAT_API_KEY": "your-value",
        "EMBEDDING_BACKEND": "your-value"
      }
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

需要你填写的值

  • EMBEDDING_MODELS env
    Embedding models in selection order; the current runtime uses the first provider/model entry; empty = local ONNX
  • LOCAL_EMBEDDING_MODEL env
    Built-in fastretrieval model ID or local directory with fastretrieval-manifest.json
  • LOCAL_RERANK_MODEL env
    Fastretrieval TextCrossEncoder model ID; empty = reranking disabled
  • LOCAL_EMBEDDING_DIM env
    Required positive output dimension for an external local embedding ID without a manifest
  • LOCAL_EMBEDDING_MODEL_FILE env
    ONNX file path inside a manifest-backed local embedding directory
  • LOCAL_EMBEDDING_POOLING env
    Explicit pooling for an external local embedding ID without a manifest
  • LOCAL_EMBEDDING_NORMALIZE env
    Explicit L2 normalization for an external local embedding ID without a manifest
  • HULL_EMBED_API_KEY 机密 env
    API key for the [models.embed] cell transport (OpenRouter pre-wired default); host-injected, overrides the cell api_key
  • HULL_CHAT_API_KEY 机密 env
    API key for the [models.chat] cell transport (OpenRouter pre-wired default); host-injected, enables LLM summaries when the cell model is set
  • EMBEDDING_BACKEND env
    DEPRECATED (honored one release): embedding backend override 'local' or 'cloud'. Use EMBEDDING_MODELS instead.

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 n24q02m 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“开发者工具”中的其他服务器比较i

  • 星标数多于此分类中其他 4919 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 4919 个服务器的 76% 更新
  • 基础检查结果等于或优于此分类中其他 4919 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Crg 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

你需要填写:HULL_EMBED_API_KEY, HULL_CHAT_API_KEY

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(3.31.0)于11天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。

有什么可以替代它?

同一分类中有:GitHub, Desktop Commander, Cloudflare MCP

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

GitHub

作者:github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

电脑或云端★ 34,245MIT4天前更新
安装

Desktop Commander

作者:wonderwhy-er

MCP server for terminal commands, file operations, and process management

在你的电脑上运行★ 10,225MIT17天前更新
安装

Cloudflare MCP

作者:cloudflare

Cloudflare MCP servers

在云端运行★ 4,446Apache-2.014个月前更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

Better Code Review Graph

Renamed: repo is crg, PyPI distribution is n24q02m-crg (formerly better-code-review-graph, kept as a legacy command alias) — CLI-first (crg command); MCP server is a secondary surface.

mcp-name: io.github.n24q02m/crg

Knowledge graph for token-efficient code reviews -- semantic search and call-graph resolution across your codebase.

Sister projects from n24q02m (click to expand)

ProjectTaglineTag
crgKnowledge graph for token-efficient code reviews -- semantic search and call-...MCP
better-drive2-way Google Drive sync with .driveignore filter — rclone engine, Windows trayTooling
better-email-mcpIMAP/SMTP email for AI agents -- read, send, organize folders, and manage att...MCP
better-godot-mcpComposite MCP server for Godot Engine -- 17 composite tools for AI-assisted g...MCP
better-notion-mcpMarkdown-first Notion for AI agents -- pages, databases, blocks, and comments...MCP
better-semantic-releaseDrop-in python-semantic-release fork with built-in release-safety guards (orp...Tooling
better-telegram-mcpTelegram for AI agents -- messages, chats, media, and contacts across both bo...MCP
better-workspace-mcpGoogle Workspace MCP server (Docs/Drive/Calendar/Gmail/Sheets/Slides/Tasks/Ch...MCP
claude-pluginsClaude Code plugin marketplace for the n24q02m MCP servers -- install web sea...Marketplace
imagine-mcpImage and video understanding + generation for AI agents -- across Gemini, Op...MCP
jules-task-archiverChrome Extension for bulk operations on Jules tasks via batchexecute API -- a...Tooling
mcp-coreShared foundation for building MCP servers -- Streamable HTTP transport, OAut...MCP
mnemo-mcpPersistent AI memory with hybrid search and embedded sync. Open, free, unlimi...MCP
fastretrievalFast multi-model retrieval runtime for ONNX and GGUF embeddings, reranking, and model contractsLibrary
skretSecrets without the server.CLI
tacetA self-distilling neuro-symbolic cascade that amortises LLM cost across knowl...Tooling
web-coreShared web infrastructure package for search, scraping, HTTP security, and st...Library
wet-mcpOpen-source MCP server for AI agents: web search, content extraction, and lib...MCP

An MCP server that parses your codebase with Tree-sitter, builds a structural graph of functions/classes/imports, and gives Claude (or any MCP client) precise context so it reads only what matters instead of the whole tree. Semantic search runs through the local ONNX model registry from fastretrieval by default (zero config, no API key), with an optional cloud embedding chain. Fork of code-review-graph with fixed multi-word search, qualified call resolution, dual-mode embeddings, output pagination, and production CI/CD.

v2.0 migration (BREAKING)

v2.0 adds temporal columns (valid_from_sha / valid_to_sha on every node + edge) and an opt-in security scanner. The schema migration is auto-applied on first GraphStore open, and a backup of the pre-2.0 DB is saved to .pre-2.0.bak so you can roll back. See BREAKING_CHANGES.md for the full schema-change list, behavior changes, environment requirements, and the downgrade procedure (CRG_DOWNGRADE_TO_1_X=1 uv run crg).

Table of contents

  • v2.0 migration (BREAKING)
  • Install
  • Usage
  • Smithery
  • Configuration
  • Tools
  • CLI
  • Features
  • Comparison
  • Security
  • Build from source
  • Trust model
  • Migration & changelog
  • Documentation
  • License

Install

For OMP and other local coding harnesses, the primary surface is the package CLI plus the bundled skills/ workflows. The skills invoke the CLI directly and do not require an MCP server mapping.

# Run without a persistent install (short `crg` script; the PyPI distribution is

n24q02m-crg, so uvx needs the explicit --from form for the crg name)

uvx --python 3.13 --from n24q02m-crg crg graph build --full-rebuild \ --repo-root /path/to/repo uvx --python 3.13 --from n24q02m-crg crg graph stats \ --repo-root /path/to/repo

Or install the console scripts (installs both crg and the legacy long name)

pip install n24q02m-crg crg query search --search-query "authentication" \ --repo-root /path/to/repo

The optional Semgrep engine for deeper security scans is a separate extra:

pip install 'n24q02m-crg[security]'

MCP stdio remains a secondary protocol adapter for clients that require it:

{

"mcpServers": { "crg": { "command": "uvx", "args": ["--python", "3.13", "n24q02m-crg"], "env": { "MCP_TRANSPORT": "stdio" } } } }

Install matrix (stdio unless noted; the CLI-first usage above stays the primary surface):

ClientInstall
Claude Code (plugin)/plugin marketplace add n24q02m/claude-plugins then /plugin install crg@n24q02m-plugins
Claude Code (stdio)claude mcp add crg -- uvx --python 3.13 n24q02m-crg
Codexregister stdio command uvx --python 3.13 n24q02m-crg under mcp_servers in ~/.codex/config.toml
Gemini CLIadd the mcpServers JSON above to ~/.gemini/settings.json
Cursor / Windsurfadd the mcpServers JSON above via the client's MCP settings (mcp.json)
Any client (HTTP self-host)point the client at https:// /mcp (MCP_TRANSPORT=http) -- self-host only, no hosted endpoint

Install with an AI agent -- paste this to your AI coding agent:

Install MCP server crg following the steps at

https://raw.githubusercontent.com/n24q02m/claude-plugins/main/plugins/crg/setup-with-agent.md

Full CLI usage is in CLI. Optional per-client MCP setup is at [docs.n24q02m.com/servers/crg/setup/](https://docs.n24q02m.com/servers/crg/setup/).

Usage

Two ways to run the server, plus the surfaces to consume it.

Dev: uv, no auth (loopback only)
# instance config lives at $CRG_CONFIG_DIR or ~/.crg (same schema as hull's

config.toml); a default no-auth template is fine for local dev

uv run n24q02m-crg server start

-> http://127.0.0.1:8000/mcp (no-auth is refused on any off-loopback bind)

Always-on: docker (token auth)
cp docker-config/config.example.toml docker-config/config.toml

mint a token + hash (hull CLI ships with crg's dependency tree):

TOKEN=$(python -c "import secrets; print(secrets.token_urlsafe(32))")

hull token hash "$TOKEN" # paste output into token_hash in config.toml

docker compose up -d

The compose file builds the Dockerfile's http target (image crg:http), publishes the container on host loopback only (127.0.0.1:${CRG_PORT:-8772}:8080), and mounts ./docker-config/config.toml read-only at the container's config dir (CRG_CONFIG_DIR=/data/config); graph state persists in the crg-data named volume. All state stays on your machine.

Consuming: CLI or MCP

CLI (local graphs, no server needed):

crg graph build --full-rebuild --repo-root /path/to/repo

crg query search --search-query "authentication" --repo-root /path/to/repo

MCP over HTTP (remote/always-on): point any MCP client at http://127.0.0.1:8772/mcp with Authorization: Bearer :

{

"mcpServers": { "crg": { "url": "http://127.0.0.1:8772/mcp", "headers": { "Authorization": "Bearer " } } } }

Per-task model configuration

Each task (embed / rerank / chat / jev_score) resolves its own OpenAI-spec provider cell from [models. ] in the instance config: an independent base_url + api_key + model. Cloud or local is purely a config choice — point base_url at OpenRouter, a vendor, or your own local gateway (e.g. http://host.docker.internal:11434/v1). API keys are host-only material: keep them in config.toml (gitignored under docker-config/) or supply via HULL_ _API_KEY env; they are never end-user supplied.

Local-first boundary

CRG is local-first for coding workflows:

  • CLI and bundled Skills are the primary surfaces for graph build/query, impact analysis, review context, security scans, and repository onboarding.
  • MCP stdio is the secondary protocol adapter over the same local domain services; it does not maintain a separate graph implementation.
  • Graph state stays in /.crg/graph.db unless an explicit multi-user/self-host configuration selects another data directory.
  • PyPI, CI, security scanning, GitHub releases, and eligible stable MCP Registry publication remain active. Historical public OCI tags are retained, but new public Docker Hub/GHCR images are no longer published.
  • CRG has no hosted Cloudflare runtime in the target topology.

Smithery

The repo ships a smithery.yaml so the server can be built and run through Smithery. It deploys over stdio and needs no startup configuration -- the config schema is empty, and any optional cloud embedding/summary keys are supplied at runtime through the server's own config flow (see Configuration below). The launch command is the same uvx invocation as a local install:

startCommand:

type: stdio commandFunction: |- (config) => ({ command: 'uvx', args: ['--python', '3.13', 'crg'] })

Configuration

Everything w

只显示了开头部分;其余内容请在仓库中阅读

问 PopNx