Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Rpg Encoder

by userFRMversion 0.6.7i★ –iRuns on your computer
Registry nameio.github.userFRM/rpg-encoder

Install

Overview

Description from the maker (original English)

Semantic code graph for AI-assisted code understanding via tree-sitter and MCP.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • The registry lists no key to fill in.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "rpg-encoder": {
      "command": "npx",
      "args": [
        "-y",
        "rpg-encoder"
      ]
    }
  }
}

Run this in your terminal

claude mcp add rpg-encoder -- npx -y rpg-encoder

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "rpg-encoder": {
      "command": "npx",
      "args": [
        "-y",
        "rpg-encoder"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "rpg-encoder": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "rpg-encoder"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account userFRM, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 32461 servers in this category
  • Published to the registry more recently than 3% of the other 32461 servers in this category
  • Basic checks equal to or better than 100% of the other 32461 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Rpg Encoder safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.6.7) reached the registry 8 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, dotnet-mcp

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

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

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

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

Runs in the cloud★ 211Updated yesterday
Install

dotnet-mcp

by Skymly

MCP server for .NET symbols, XAML, source generators, and restricted workspace edit

Runs on your computerUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

rpg-encoder

Give your AI agent a brain for your codebase.

AI coding agents waste most of their tool calls fumbling through your codebase with grep, cat, find, and file reads. rpg-encoder fixes that. It builds a semantic graph of your code with Tree-sitter — not just *what calls what*, but *what every function does* — and gives your AI assistant whole-repo understanding via MCP in a single tool call.


Quick Start

claude mcp add rpg -- npx -y -p rpg-encoder rpg-mcp-server

One command. Works with Claude Code, Cursor, opencode, Windsurf, or any MCP-compatible agent. No Rust toolchain, no cloning, no building — npx downloads a pre-built binary for your platform.

Then open any repo and tell your agent:

*"Build and lift the RPG for this repo"*

Your agent handles everything: indexes entities (seconds), reads each function and adds intent-level features (a few minutes), organizes them into a semantic hierarchy, and commits .rpg/graph.json for your team.

For repos with ~100+ entities, lifting_status will tell your agent to delegate the lifting loop to a sub-agent or a cheaper model — feature extraction is pattern-matching, not novel reasoning. If your runtime has no sub-agent mechanism, run rpg-encoder lift --provider anthropic|openai from the terminal with an API key — the CLI drives an external LLM directly with no agent involvement. After the CLI finishes, call reload_rpg in your session to load the updated graph. The CLI lifts entities with no features; re-lifting stale entities (features present but outdated after code changes) is handled by the in-session MCP flow, not the CLI.

Once lifted, try:

  • *"What handles authentication?"* — finds code even when nothing is named "auth"
  • *"Show everything that depends on the database connection"*
  • *"Plan a change to add rate limiting to API endpoints"*

Use RPG before grep, cat, find

The server instructions tell your agent to reach for RPG tools FIRST for any question about code structure or behavior. That reflex matters — grep, cat, and ad-hoc file reads burn tokens and miss semantic relationships RPG already knows.

If you'd otherwise reach for...Use this instead
grep -r / rg (by intent)search_node(query="...")
grep -r / rg (by name)search_node(query="...", mode="snippets")
cat / reading a functionfetch_node(entity_id="file:name")
chained greps for callers/calleesexplore_rpg(entity_id="...", direction="...")
recursive grep for "what depends on X"impact_radius(entity_id="...")
wc -l / find / treerpg_info
reading many files for contextsemantic_snapshot
manual search → fetch → explore chainscontext_pack(query="...")
"how do I refactor X safely"plan_change(goal="...")

Fall back to grep, cat, or file reads only when the query is about literal text (string search, comments, TODOs, log messages) — not about structure.


How It Works

  1. Parse — Tree-sitter extracts entities (functions, classes, methods) and dependency edges (imports, calls, inheritance) from 15 languages.
  2. Lift — An LLM (your agent, or a cheap API like Haiku) reads each entity and writes verb-object features: *"validate JWT tokens"*, *"serialize config to disk"*.
  3. Organize — Features cluster into a 3-level semantic hierarchy (Area → Category → Subcategory) that emerges from *what the code does*, not the file tree.
  4. Understand — semantic_snapshot compresses the whole graph into ~25K tokens. Your LLM reads it once and *knows the repo*.
The semantic snapshot

Instead of grepping through files, the LLM calls semantic_snapshot once and receives:

  • Hierarchy — every functional area with aggregate features
  • Entities — every function, class, method grouped by area, with its semantic features
  • Dependency skeleton — condensed call graph with qualified names
  • Hot spots — top 10 most-connected entities (the architectural backbone)

~25K tokens covers ~1000 entities. That's 2-3% of a 1M context window — the LLM starts every session already knowing your repo.

Self-maintaining graph

Whenever your working tree changes — committed, staged, or unstaged — the MCP server automatically re-syncs before responding to the next query. A changeset hash over (path, size, mtime) means repeated saves of the same file trigger one sync, and idle queries trigger none. Reverts are detected too: if a previously-dirty file returns to its HEAD state, the graph is restored.

Two ways to lift
ModeCommandCostWho pays
Agent lifting*"Build and lift the RPG"*Subscription tokensYour Claude Code / Cursor subscription
Autonomous liftingauto_lift(provider="anthropic", api_key_env="ANTHROPIC_API_KEY")~$0.02 per 100 entitiesExternal API key (Haiku, GPT-4o-mini, OpenRouter, Gemini)

auto_lift calls a cheap external LLM directly — your coding subscription never touches the lifting work. Use api_key_env to resolve keys from environment variables so they never appear in tool call transcripts.


Architecture

Seven Rust crates, one MCP server binary, one CLI binary:

CrateRole
rpg-coreGraph types (RPGraph, Entity, HierarchyNode), storage, LCA algorithm
rpg-parserTree-sitter entity + dependency extraction (15 languages)
rpg-encoderEncoding pipeline, lifting utilities, incremental evolution
rpg-navSearch, fetch, explore, snapshot, TOON serialization
rpg-liftAutonomous LLM lifting (Anthropic, OpenAI, OpenRouter, Gemini)
rpg-cliCLI binary (rpg-encoder)
rpg-mcpMCP server binary (rpg-mcp-server) with 27 tools

MCP Tools (27)

Build & Maintain (4 tools)

ToolDescription
build_rpgIndex the codebase (run once, instant)
update_rpgIncremental update from git changes
reload_rpgReload graph from disk after external changes
rpg_infoGraph statistics, hierarchy overview, per-area lifting coverage

Navigate & Search (5 tools)

ToolDescription
semantic_snapshotWhole-repo semantic understanding in one call (~25K tokens for 1000 entities)
search_nodeSearch entities by intent or keywords (hybrid embedding + lexical scoring)
fetch_nodeGet entity metadata, source code, dependencies, and hierarchy context
explore_rpgTraverse dependency graph (upstream, downstream, or both)
context_packSingle-call search + fetch + explore with token budget

Plan & Analyze (7 tools)

ToolDescription
impact_radiusBFS reachability analysis — "what depends on X?"
plan_changeChange planning — find relevant entities, modification order, blast radius
find_pathsK-shortest dependency paths between two entities
slice_betweenExtract minimal connecting subgraph between entities
analyze_healthCode health: coupling, instability, god objects, clone detection
detect_cyclesFind circular dependencies and architectural cycles
reconstruct_planDependency-safe reconstruction execution plan

Semantic Lifting (11 tools)

ToolDescription
auto_liftOne-call autonomous lifting via cheap LLM API (Haiku, GPT-4o-mini, OpenRouter, Gemini)
lifting_statusDashboard — coverage, per-area progress, NEXT STEP
get_entities_for_liftingGet entity source code for your agent to analyze
submit_lift_resultsSubmit the agent's semantic features back to the graph
finalize_liftingAggregate file-level features, rebuild hierarchy metadata
get_files_for_synthesisGet file-level entity features for holistic synthesis
submit_file_synthesesSubmit holistic file-level summaries
build_semantic_hierarchyGet domain discovery + hierarchy assignment prompts
submit_hierarchyApply hierarchy assignments to the graph
get_routing_candidatesGet entities needing semantic routing (drifted or newly lifted)
submit_routing_decisionsSubmit routing decisions (hierarchy path or "keep")

Supported Languages

15 languages via Tree-sitter:

LanguageEntity ExtractionDependency Resolution
PythonFunctions, classes, methodsimports, calls, inheritance
RustFunctions, structs, traits, impl methodsuse, calls, trait impls
TypeScriptFunctions, classes, methods, interfacesimports, calls, inheritance
JavaScriptFunctions, classes, methodsimports, calls, inheritance
GoFunctions, structs, methods, interfacesimports, calls
JavaClasses, methods, interfacesimports, calls, inheritance
C / C++Functions, classes, methods, structsincludes, calls, inheritance
C#Classes, methods, interfacesusing, calls, inheritance
PHPFunctions, classes, methodsuse, calls, inheritance
RubyClasses, methods, modulesrequire, calls, inheritance
KotlinFunctions, classes, methodsimports, calls, inheritance
SwiftFunctions, classes, structs, protocolsimports, calls, inheritance
ScalaFunctions, classes, objects, traitsimports, calls, inheritance
BashFunctionssource, calls

Install

MCP server (recommended)
# Claude Code

claude mcp add rpg -- npx -y -p rpg-encoder rp

Only the beginning is shown; read the rest in the repo

Ask PopNx