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

Selvedge

by masondelanversion 0.3.18i★ –iRuns on your computer
Registry nameio.github.masondelan/selvedge

Install

Overview

Description from the maker (original English)

Persistent decision memory for AI agents: rationale, rejected approaches, and entity history.

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: Search & AI memory

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: SELVEDGE_DB

You need

  • PyPIPython’s uv installed (for the uvx 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": {
    "selvedge": {
      "command": "uvx",
      "args": [
        "selvedge"
      ],
      "env": {
        "SELVEDGE_DB": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add selvedge --env SELVEDGE_DB=your-value -- uvx selvedge

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": {
    "selvedge": {
      "command": "uvx",
      "args": [
        "selvedge"
      ],
      "env": {
        "SELVEDGE_DB": "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": {
    "selvedge": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "selvedge"
      ],
      "env": {
        "SELVEDGE_DB": "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

  • SELVEDGE_DB env
    Override the SQLite path. Defaults to .selvedge/selvedge.db next to the codebase.

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

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account masondelan, 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 Search & AI memoryi

  • More stars than 0% of the other 5848 servers in this category
  • Published to the registry more recently than 80% of the other 5848 servers in this category
  • Basic checks equal to or better than 100% of the other 5848 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 Selvedge 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.3.18) reached the registry 9 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.

What can I use instead?

In the same category: Context7, Codebase Memory, Exa

Alternatives

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

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

Context7

Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.

by upstashWidely used↓ 972.7K/wk★ 64.2KUpdated yesterday

Computer or cloud

Codebase Memory

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

by DeusDataWidely used↓ 18K/wk★ 48.1KUpdated 24 days ago

Runs on your computer

Exa

Connect AI agents to Exa for web search, content fetching, and multi-step research.

by exa-labsWidely used★ 5.2KUpdated 2 months ago

Runs in the cloud✓ exa.ai

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.

selvedge.sh · DevHunt · PyPI · GitHub

Persistent decision memory for AI agents.

Save why you chose an approach, what you rejected, and what would change your mind. Retrieve that context in the next coding session, using a function, database column, API route or dependency as the lookup key.

Selvedge is for anyone using a compatible agent. Connect through local MCP over stdio, or use the CLI from an agent with shell access. Decisions stay in the same SQLite store in .selvedge/ when you switch tools. No hosted account is required; core storage and retrieval make no LLM calls.

Get started · Documentation · Agent compatibility

uv tool install --upgrade selvedge

selvedge demo

Requires uv and Python. Python 3.11–3.14 is recommended; Python 3.10 remains compatible but is end of life. The demo uses a temporary database. Follow the quickstart to connect your agent to a real project.

Use selvedge demo --mcp to save through a local stdio MCP server, restart it and retrieve the same record. Add --json for the checked IDs and versions. This tests the Python installation running Selvedge with disposable data; your agent's configuration, activation and hooks still need a separate check.

Who Selvedge is for

  • Solo developers returning to a project after the original conversation is gone.
  • Teams that need to pass recorded decisions between sessions and coding tools.

The problem

Code shows the chosen approach. It may leave out the constraint that shaped it or the alternative you ruled out. Selvedge gives those explanations a place in the project and tools to retrieve them before the next edit.

Only explicitly saved decisions can be recalled. A saved explanation is an account supplied by a person or agent; Selvedge does not verify that it is true or guarantee that an agent will consult it. Verify one decision across two sessions to test your setup.


What's new in v0.3.18

Read the recorded reasons before routine review metadata. The optional GitHub review Action puts rejected and reverted approaches, revisions and constraints first. Its comment defaults to a 6,000-character budget, counts omitted events and links to the trusted base store and longer job summary. Unchanged reruns leave the comment untouched.

Healthy runs with no matching history keep the job summary without creating a new comment; an existing comment is refreshed and broken chains remain visible. Missing history is unknown, not approval. The Action still uses only publication-approved base history and never executes PR-head code.

A regression check also protects the library's local save/reopen/retrieve path with site packages unavailable and socket access blocked. No new runtime dependencies, migrations, MCP tools or model calls. Python 3.10 compatibility is retained; use supported Python 3.11–3.14 for new installations. Native Action execution and review usefulness remain unverified.


What's new in v0.3.17

Check recorded decisions before a review. Generate a Markdown digest, then run selvedge export --format markdown -o DECISIONS.md --check to catch drift. An identical digest exits 0 silently; a stale or missing digest exits 1 with a unified diff and regeneration guidance. Check mode preserves the digest and stored records. Review exported reasoning before publishing it.

selvedge demo --mcp saves a synthetic rejection through a real local MCP server, restarts it and retrieves the same record. It uses disposable state; it does not verify your agent's configuration or hook activation.

CLI output now preserves literal brackets in user data, and blame and Markdown exports distinguish rejected approaches from changes that were tried and reverted. Python 3.10 compatibility remains for this patch, but that runtime is now upstream end of life; use tested, supported Python 3.11–3.14 for new installations. No new runtime dependencies, migrations or MCP tools.


Where Selvedge fits

  1. Save a decision. You or your coding agent record a choice, its reason, and any rejected approaches through MCP or the CLI.
  2. Keep it with the project. Selvedge stores the record in local SQLite, keyed to the function, column, route or other entity it concerns.
  3. Recall it before the next edit. A later session queries the same store and checks whether the earlier constraint still applies.

Git keeps the code history; review tools check changes; observability shows runtime behavior. Selvedge adds the recorded reasons behind decisions. How it works · Agent Trace interchange


How Selvedge compares

Choose the simplest memory mechanism that fits your workflow:

NeedUseful starting pointWhat Selvedge adds
Standing project rulesMaintained agent instruction filesQueryable decisions attached to particular entities
Reviewed architecture choicesArchitecture decision records (ADRs)Structured outcomes, rejected approaches and revisit signals
Who changed a line and whenGit history and attribution toolsThe stated reason and earlier approaches for an entity
Carry recorded decisions into another session or clientShared project documentationMCP and CLI retrieval from the same local database

These approaches can be used together. Read the source-linked comparison and instructions versus ADRs versus decision memory for specific selection criteria and limitations.

Why entity history matters. users.email, env/STRIPE_SECRET_KEY, api/v1/checkout and deps/stripe remain useful query targets when their code moves. Explicit rejection and superseding records let a later session inspect what was tried and whether the original constraint still applies.

Why capture time matters. Recording a reason while the context is available can preserve information a diff does not contain. It does not make the reason infallible. Retrieval uses stored records; the coding agent remains responsible for checking applicability and testing its change.

Why changesets matter. Tag events with a shared changeset such as add-stripe-billing to retrieve a task's decisions across tables, environment variables, routes and functions.

Agent Trace interchange. selvedge export --format agent-trace and selvedge import --format agent-trace exchange Agent Trace v0.1.0 records. Reasoning and entity history travel in the dev.selvedge metadata. The mapping and limits document the format; Selvedge vendors the schema and has no runtime dependency on the upstream project.


Quickstart

Connect your agent

With uv installed:

uv tool install --upgrade selvedge

selvedge demo cd your-project selvedge setup

Setup detects supported clients. To select a preset explicitly, use --agent with claude-code, codex, copilot, cursor, gemini or windsurf; repeat the flag for multiple clients. These presets are conveniences, not a compatibility limit. For another agent with local stdio MCP support, follow manual setup. Agents with shell access can use the CLI. Prefer pip? Use python -m pip install --upgrade selvedge in a virtual environment. The selvedge-server executable must be on your editor's PATH; launch the editor from that environment or use the executable's absolute path in its MCP config.

Setup asks before changing files, backs up existing content, installs MCP and agent instructions, initializes the project, and offers a Git post-commit hook. Configuration files and lifecycle hooks vary by client. See the compatibility guide for preset paths, activation requirements and limitations.

Restart your agent in the project and approve Selvedge's tools if prompted. Follow your client's project-trust requirements. Ask the agent:

Use Selvedge to record one real approach we considered and rejected in this project.

Include the entity, why, and what would change our mind. Do not invent a decision.

Show the saved entity path and record ID.

Start a new session and look up the same entity to verify that the decision carries forward. Follow the first-decision verification guide and cross-agent handoff guide for observable checks. MCP access does not automatically capture every decision: the installed instructions guide the agent to use it. Native lifecycle adapters cover supported client events; startup delivery, watched-edit checks and compaction notifications vary by harness. See the agent hook guide before enabling them.

For CI bootstrap or devcontainer.json postCreateCommand:

selvedge setup --non-interactive --yes

Verify the wiring — open a second terminal in the same project:

selvedge watch

Make any change in your AI tool — add a column, rename a function, add an env var. selvedge watch should print the new event within a second of the agent calling log_change. If nothing arrives, run selvedge doctor for a single-command health check that tells you which step is silently broken.

Query your history:

selvedge status                        # recent activity + missing-commit count

selvedge diff users # all changes to the users table selvedge diff users.email # changes to a specific column selvedge blame payments.amount # what changed last and why selvedge history --since 30d # last 30 days of changes selvedge history --since 15m # last 15 minutes ('m' = minutes) selvedge changeset add-stripe-billing # all events for a feature/task selvedge search "stripe" # full-text search selvedge stats # observed tool calls and explanation quality selvedge import migrations/ # backfill from migration files selvedge export --format csv # dump history to CSV

Manual install — if you'd rather wire it up yourself

If you don't want to run the wizard,

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

Ask PopNx