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

stalemap

by Umairversion 0.4.1i★ –iRuns on your computer
Registry nameio.github.Umair/stalemap

Install

Overview

Description from the maker (original English)

Tells coding agents which npm dependencies changed after their training cutoff, and what changed.

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: Developer tools

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).
  • You fill in yourself: STALEMAP_MODEL

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": {
    "stalemap": {
      "command": "npx",
      "args": [
        "-y",
        "stalemap",
        "mcp"
      ],
      "env": {
        "STALEMAP_MODEL": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add stalemap --env STALEMAP_MODEL=your-value -- npx -y stalemap mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

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

{
  "mcpServers": {
    "stalemap": {
      "command": "npx",
      "args": [
        "-y",
        "stalemap",
        "mcp"
      ],
      "env": {
        "STALEMAP_MODEL": "your-value"
      }
    }
  }
}

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": {
    "stalemap": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "stalemap",
        "mcp"
      ],
      "env": {
        "STALEMAP_MODEL": "your-value"
      }
    }
  }
}

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.

Values you fill in

  • STALEMAP_MODEL env
    Model ID the agent runs as (e.g. claude-sonnet-5-5), for its training cutoff. Detected from agent settings if unset.

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 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account Umair, 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 Developer toolsi

  • More stars than 0% of the other 4920 servers in this category
  • Published to the registry more recently than 68% of the other 4920 servers in this category
  • Basic checks equal to or better than 100% of the other 4920 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 stalemap 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.4.1) reached the registry 18 days 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: GitHub, Desktop Commander, Cloudflare 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

GitHub

by github

GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.

Computer or cloud★ 34,245MITUpdated 4 days ago
Install

Desktop Commander

by wonderwhy-er

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

Runs on your computer★ 10,225MITUpdated 17 days ago
Install

Cloudflare MCP

by cloudflare

Cloudflare MCP servers

Runs in the cloud★ 4,446Apache-2.0Updated 14 months ago
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.

Install · Example · How it works · Results · Changelog

Coding agents learn libraries from training data that stops at a cutoff date. When your project pins newer versions, the agent writes code for the old API: maxSteps against AI SDK 7, required_error against zod 4, middleware.ts against Next 16.

stalemap finds the dependencies that changed after your model's training cutoff and tells the agent what changed, in three ways:

  • Notes: a short, ranked list of changes written into AGENTS.md or CLAUDE.md, so the agent reads it before it starts.
  • Edit-time guard: after each edit, the project's own type-check. If the code uses an API that changed after the cutoff, the agent gets the compiler error and the matching note (or the release-note or upgrade-guide section that explains it) right away. It also reports the code that still compiles but uses something that moved.
  • `search_changes`: an MCP tool the agent can ask in its own words, such as "resolve alias in next.config", to get the matching changes with their sources.

It works for JavaScript and TypeScript projects, with Claude Code, Cursor, Codex, OpenCode or any MCP client.

In a blind, pre-registered benchmark of 66 tasks built from changes released after June 2026, claude-sonnet-5-5 agents passed 89% of sessions with stalemap, against 68% with no help and 73% with a plain tsc --noEmit hook after each edit. See Results.

Status

  • npm: the latest release is stalemap 0.4.1: the build tested in held-out v4 (0.4.0), plus a one-line footer in the notes block. npx stalemap, the Claude Code plugin and the GitHub Action all run it. See the changelog.
  • The project is early, and maintained by one person.

Install

Claude Code plugin
/plugin marketplace add Umair/stalemap

/plugin install stalemap@stalemap

The plugin adds:

  • a SessionStart hook that puts the notes into Claude's context for the session's model (on startup, after /clear and after compaction; it writes no files);
  • a PostToolUse hook that runs the edit-time guard after each Write or Edit;
  • the stalemap MCP server and two skills (/stalemap:sync writes the notes block; upgrade tells Claude to look up a package's changes before using or upgrading it).

The hooks and the MCP server run npx -y stalemap@latest, so they use the latest npm release. Its MCP tools are search_changes, package_changes, project_changes and check_notes.

Command line
npx stalemap            # preview what changed and the block it would write

npx stalemap sync # write the block into AGENTS.md or CLAUDE.md npx stalemap check # for CI: exit 1 when the block is missing or stale npx stalemap guard src/**/*.ts # run the guard by hand

The block sits between and . Text outside it is never touched. Claude Code reads CLAUDE.md; if your notes live in AGENTS.md, add @AGENTS.md to CLAUDE.md or pass --target CLAUDE.md.

Other agents: setup --agent
stalemap setup --agent cursor             # or codex, opencode, claude

stalemap setup --agent codex --dry-run # print the changes, write nothing

One command per agent writes the notes, registers the MCP server and installs the guard as the agent's post-edit hook, as project files you can commit. It merges into existing config files, keeps entries it didn't write, and re-running it changes nothing.

One caveat: it hasn't been tried in a real Cursor, Codex or OpenCode install yet. Cursor doesn't pass a postToolUse hook's context to the model yet, so setup adds a stop-hook fallback that sends unreported findings as a follow-up message.

Any MCP client
{ "mcpServers": { "stalemap": { "command": "npx", "args": ["-y", "stalemap@latest", "mcp"] } } }
GitHub Action
- uses: Umair/stalemap@main

with: model: claude-opus-5-5 # fail CI when the notes are missing or stale

mode: comment # or comment on PRs that change dependencies

Comment mode needs permissions: pull-requests: write. It lists each changed dependency (what the model knows → what's pinned) with its notes, and updates the comment on later pushes.

What the notes look like

For a Next.js + AI SDK app and claude-sonnet-4-5 (cutoff 2025-07-31), excerpt:

**ai** 4.3.16 → 7.0.142 (major)
  • CoreMessage was removed; use ModelMessage. [types]
  • convertToCoreMessages was removed; use convertToModelMessages. [types]
  • streamText() options no longer accept maxTokens, maxSteps, toolCallStreaming, … [types]

next 15.4.0 → 16.4.2 (major)

  • revalidateTag() now requires profile (in next/cache) [types]
  • NextMiddleware is deprecated: Use NextProxy instead. Middleware has been renamed to Proxy. (in next/server) [types]

Full output: examples/next-ai-app.claude-sonnet-4-5.md.

How it works

  1. Which model? --model, or the model configured for Claude Code, Codex, OpenCode or Gemini CLI, or $ANTHROPIC_MODEL. The training cutoff comes from models.dev (with a built-in fallback table), or pass --cutoff YYYY-MM-DD.
  2. What did the model know? For each dependency, the newest stable release published at least 30 days before the cutoff (--margin).
  3. Which dependencies? Direct dependencies your code imports (scanned locally), plus the ones a config file configures (tsconfig.json, next.config.*, the Prisma schema, Vitest and ESLint configs, and others). --all checks every direct dependency. Pinned versions come from node_modules or the lockfile (npm, pnpm, yarn, bun).
  4. What changed?
  • Types: both versions' .d.ts files are downloaded and compared with the TypeScript compiler API: removed, renamed and moved exports, new required parameters, removed or newly required options, and new @deprecated tags with their hints.
  • Release notes: the package's changelog or GitHub Releases, scored for breaking-change signals and for the APIs you use. A removal gets its replacement from a rename the changelog announces.
  • Upgrade guides (--guides): for changes that never reach a type signature, like a new default or a renamed file convention. Claude turns each guide into short notes, and a note is kept only if it quotes the guide.
  • Verified examples (--examples): a Before → After line under the top notes, written by Claude and kept only if it compiles against the version you pin.
  1. Fit the budget. Notes about what your project uses come first: imported APIs, members and props, config keys it sets, file names. The default budget is 1,800 tokens (--budget).

The guard runs after each edit. It runs the project's own tsc and reports what it finds, in this order:

  1. Compile errors that come from a dependency that changed after the cutoff, with the matching note as the fix. When no note explains the error, it shows the matching section from the package's type changes, release notes or upgrade guide, found by searching with the error and the code around it.
  2. Things that still type-check but changed:
  • config keys that moved (experimental.ppr in Next 16);
  • moved members (HttpStatusCode.PayloadTooLarge → ContentTooLarge in axios 1.20);
  • renamed file conventions (middleware.ts → proxy.ts);
  • tsconfig.json options the project's TypeScript rejects.
  1. The compiler's other errors: in the edited file, new ones in files that import it, and a few elsewhere. These don't claim a dependency changed.

So a plain type-check hook is a subset of the guard. STALEMAP_GUARD_TSC=0 limits the guard to dependency changes. Deprecations are reported only with STALEMAP_GUARD_DEPRECATIONS=1.

`search_changes` (also stalemap search ) searches everything stalemap found for the project's dependencies: every type change, every release-note item, cached upgrade-guide notes and, for a new major, the guides' text. Ranking is BM25 over words and split identifiers (resolveAlias matches "resolve alias"), weighted toward what the project uses. The first search builds an index from the analysis caches; later ones are offline and fast.

`stalemap probe` measures which notes a model actually needs: it asks the model to write code for each change, type-checks the answers against the pinned version, and runs again with the notes. Notes the model already gets right are dropped from the block. Probe tasks name the old API, so they measure whether the model knows a change when pointed at it, which is easier than noticing it unprompted.

Run stalemap --help for every command and option, including --llm (summaries written by Claude) and the precomputed reports for about 200 fast-moving packages (not hosted yet).

What leaves your machine

  • Package names and versions go to the npm registry, GitHub (changelogs and releases; GITHUB_TOKEN or your gh login is used when available) and models.dev.
  • Your source code is never uploaded. The import scan is local.
  • With --llm, --examples or --guides: type diffs, release-note excerpts, guide text and the names of APIs you import go to Claude (the Anthropic API or claude -p). Your code isn't included.
  • With probe: the probe prompts go to the provider you choose.
  • With $STALEMAP_PRECOMPUTED_URL set: package names, not versions, go to that host.

Caches live in ~/.cache/stalemap ($STALEMAP_CACHE moves them).

Results

Every result comes from headless Claude Code sessions graded by hidden tests the agent never sees. Each task is run in two modes: one-shot (file tools only) and checks (the agent can also run npm test and tsc). Intervals come from a two-level bootstrap (tasks, then runs). A difference counts as a win only when its interval excludes zero.

Held-out v4 (protocol, [results for `claude

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

Ask PopNx