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

API Governance

by coderiftsversion 1.0.3i★ –iRuns in the cloud
Registry nameio.github.coderifts/api-governance

Install

Overview

Description from the maker (original English)

Signed, offline-verifiable contract-change authorization. Only a granted change can proceed.

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 in the cloud
  • Transport: Streamable HTTP
  • Category: Other
  • You need to fill in: Authorization

Install

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

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • You fill in yourself: Authorization

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

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

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Run this in your terminal

claude mcp add --transport http api-governance https://app.coderifts.com/mcp --header 'Authorization: your-value'

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": {
    "api-governance": {
      "url": "https://app.coderifts.com/mcp",
      "headers": {
        "Authorization": "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": {
    "api-governance": {
      "type": "http",
      "url": "https://app.coderifts.com/mcp",
      "headers": {
        "Authorization": "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 address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

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

Values you fill in

  • Authorization secret HTTP header
    Bearer . X-API-Key is also accepted.

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

What it can do

We have not read this server’s tool list yet; we check endpoints in rotation.

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 coderifts, 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 checked yet

    Endpoint responds

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    Sign-in with OAuth

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Otheri

  • More stars than 0% of the other 32433 servers in this category
  • Published to the registry more recently than 46% of the other 32433 servers in this category
  • Basic checks equal to or better than 100% of the other 32433 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 API Governance 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?

You need to fill in: Authorization

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

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

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, Symantec Cloud DLP AIops

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

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.

CodeRifts — contract-change authorization

Only a granted change can proceed. Before a contract change merges, deploys or registers, CodeRifts decides whether it is authorized — and the check is red without a grant.

One grant binds three things: the authorization, its single use, and the target state the change moves to. The decision is signed, and the receipt verifies offline — you do not have to trust our database to check what was authorized.

Every decision also names what it does not prove.

  • Hosted MCP server: https://app.coderifts.com/mcp
  • Manifest: https://coderifts.com/mcp.json — the canonical published document. The mcp.json at the root of this repository is a pointer to it, not a second copy.
  • Official MCP Registry: io.github.coderifts/api-governance
  • Website: https://coderifts.com
  • Live demo PR: https://github.com/coderifts/demo/pull/4

Install

# Claude Code

/plugin marketplace add coderifts/api-governance /plugin install api-governance@coderifts

Any MCP client (Streamable HTTP) — add to its MCP config

{ "mcpServers": { "coderifts": { "url": "https://app.coderifts.com/mcp", "headers": { "Authorization": "Bearer " } } } }

SDKs

npm install @coderifts/sdk pip install coderifts-sdk

GitHub Copilot reads the same server under three different root keys — servers in .vscode/mcp.json, mcpServers in the cloud agent's MCP settings, and mcp-servers in a custom agent's frontmatter — and npx coderifts copilot-setup writes all three (details below).

A key is needed only to authorize; get one at https://app.coderifts.com/api/signup.


Claude Code plugin

Install the CodeRifts marketplace, then the api-governance plugin (MCP server + skill). Requires CODERIFTS_API_KEY for tool calls.

/plugin marketplace add coderifts/api-governance

/plugin install api-governance@coderifts

Local checkout (after clone):

/plugin marketplace add .

/plugin install api-governance@coderifts

The plugin wires the hosted MCP at https://app.coderifts.com/mcp and the api-governance skill. Tools exposed: preflight_change_set, verify_receipt, get_decision_details only.


Cursor plugin

Cursor Plugin package (measured Cursor layout: .cursor-plugin/plugin.json + skills/ + rules/ + mcp.json + hooks/hooks.json). Same hosted MCP and the same three tools as the Claude plugin — no fourth tool. Deterministic / signed / fail-closed — not an AI compatibility scan.

PathRoleSource of truth
plugins/api-governance-cursor/.cursor-plugin/plugin.jsonCursor Plugin manifestcursor/plugins plugin.schema.json
plugins/api-governance-cursor/skills/coderifts/SKILL.mdSkill (name: coderifts)Generated — coderifts-app scripts/generate-skill-carriers.js; the website .well-known/agent-skills/coderifts/SKILL.md is vendored from it
plugins/api-governance-cursor/rules/coderifts.mdcCursor ruleGenerated — generate-agent-host-files.js
plugins/api-governance-cursor/mcp.jsonStreamable HTTP MCP wiringSame endpoint as Claude .mcp.json (not the website tool-card)
plugins/api-governance-cursor/hooks/hooks.jsonpreToolUse adapter, failClosed: trueCLI coderifts cursor-hook on `Write\Delete — same shape as the app's generated .cursor/hooks.json`
.cursor-plugin/marketplace.jsonCursor marketplace entryCursor marketplace.schema.json

Validate:

npm run validate:cursor

The generated-rule check is LIVE when CODERIFTS_APP_ROOT (default ~/coderifts-app) has generated/agent-host/.cursor/rules/coderifts.mdc, and RECORDED against fixtures/recorded/app-generator when it does not (weaker, named). A missing or corrupt snapshot still exits 1 — no silent skip.


OpenAI / Codex package

Codex plugin package (measured OpenAI Codex layout: .codex-plugin/plugin.json + .mcp.json + skills/ + AGENTS.md). Same hosted MCP and the same three tools as the Claude plugin — no fourth tool.

PathRoleSource of truth
plugins/api-governance-openai/.codex-plugin/plugin.jsonCodex plugin manifestCodex plugin-json-spec (scaffold skill)
plugins/api-governance-openai/.mcp.jsonStreamable HTTP MCP wiringSame endpoint as Claude .mcp.json
plugins/api-governance-openai/skills/api-governance/SKILL.mdSkill + tool listTrigger wording from agent-setup rule; tool names/descriptions from generated mcp.json
plugins/api-governance-openai/AGENTS.mdAgent rules fileGenerated — coderifts agent-setup / generate-agent-host-files.js
plugins/api-governance-openai/openai-agent-instructions.mdOpenAI Agents SDK instructionsGenerated — same generator
plugins/api-governance-openai/docs/openai-production-pattern.mdProduction pattern (ID108) — host dispatch loop with executeOpenAIToolCallHand-authored recipe on shipped @coderifts/agent-guard ≥ 6.4.0 (first npm release that exports executeOpenAIToolCall; current npm 17.3.3)
plugins/api-governance-openai/scripts/smoke-execute-openai-tool-call.mjsOffline smoke (ALLOW + BLOCK; no OpenAI key)Real dispatcher + stub client
.agents/plugins/marketplace.jsonCodex marketplace entryCodex marketplace schema
Production pattern (function-calling apps)

OpenAI’s model only emits tool_call JSON; your app executes it. Wire governance at that host loop — not as a Claude-style PreToolUse hook. Full steps + one canonical loop:

→ plugins/api-governance-openai/docs/openai-production-pattern.md

# Offline smoke (needs ~/coderifts-agent-guard built, or CODERIFTS_AGENT_GUARD_ROOT)

npm run smoke:openai-dispatch

⚠ Still failing on the same one assertion, re-measured 2026-09-24: ALLOW factory ran — execute() did not run. The other eight assertions pass (4 ALLOW, 5 BLOCK), and the BLOCK side — the side that matters for a gate — is fully green: the factory does not run, the content is the gate denial with no fabricated success, and the decision identity is surfaced. The failing assertion is on the ALLOW path, where the dispatch wrapper returns the function result without having invoked the injected factory.

The 2026-09-14 version of this note ended "Investigation is in progress." That was dropped rather than re-dated: ten days on, it is a claim about activity that nothing here can verify, and a README that reports its own diligence is reporting the one thing a reader cannot check. What a reader can check is the assertion name and today's date.

Local checkout in Codex (team marketplace path):

# From a clone of this repo, point Codex at .agents/plugins/marketplace.json

then install api-governance-openai (UI / plugin install — see Codex plugin docs).

Validate package consistency (manifest, tool parity, AGENTS.md empty-diff vs regeneration):

npm run validate:openai

or: node scripts/validate-openai-package.js

AGENTS.md regeneration is LIVE when ~/coderifts-app (or CODERIFTS_APP_ROOT) exists, and RECORDED against fixtures/recorded/app-generator when it does not (weaker, named). A missing or corrupt snapshot still exits 1. Directory listing / account submission steps are not automated here.


GitHub Copilot kit

Reference copies of the generated Copilot MCP configs + instructions (single source: coderifts-app generators). Same hosted MCP and the same three tools — no fourth tool.

Primary install (living command — prefer this over copying from the kit):

npx coderifts copilot-setup

optional: --out --check (drift-gate) --force

Agent-host instructions (including .github/copilot-instructions.md) come from:

npx coderifts agent-setup
Three Copilot surfaces (root keys differ)

From the generated guide (copilot/docs/copilot-mcp.md — do not re-author this table):

SurfaceConfig locationRoot keyAuth
VS Code / Copilot Chat.vscode/mcp.json`servers`${input:coderifts_api_key} + inputs[]
Copilot cloud agent + code reviewRepo Settings → Copilot → MCP servers (paste JSON)`mcpServers`Agents secret COPILOT_MCP_CODERIFTS_API_KEY in headers
Custom agent (org/enterprise)Agent profile .md YAML frontmatter`mcp-servers`${{ secrets.COPILOT_MCP_CODERIFTS_API_KEY }}

Tools allowlisted everywhere: preflight_change_set, verify_receipt, get_decision_details.

Vendored reference tree (copilot/)
PathRoleSource of truth
copilot/.vscode/mcp.jsonVS Code / Copilot ChatGenerated — generate-copilot-mcp.js
copilot/copilot-cloud-agent-mcp.jsonCloud agent paste JSON (mcpServers)Generated — same
copilot/copilot-custom-agent-mcp.frontmatter.mdCustom agent YAML frontmatterGenerated — same
copilot/docs/copilot-mcp.mdInstall guide + surfaces tableGenerated — same
copilot/.github/copilot-instructions.mdCopilot coding-agent instructionsGenerated — generate-agent-host-files.js
copilot/SOURCE.mdProvenance + re-sync commandsPackaging note (this repo)

Validate empty-diff vs regeneration + 3-tool discipline:

node scripts/validate-copilot-kit.js

Empty-diff vs regeneration is LIVE when CODERIFTS_APP_ROOT has the generators, and RECORDED against fixtures/recorded/app-generator when it does not (weaker, named). A missing or corrupt snapshot still exits 1. The kit is a communication / distribution mirror — npx coderifts copilot-setup remains the install path.


Agent Skill (skills.sh)

npx skills add coderifts/api-governance

The skills CLI discovers skills/api-governance/SKILL.md at this repository's root and installs it under the name `api-governance`. Where it lands depends on the agent (the CLI's own table): .agents/skills/api-governance/ for most agents (Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, …) and .claude/skills/api-governance/ for Claude Code.

One skill, one name (2026-09-29). The three SKILL.md carriers — Claude (plugins/api-governance/skills/api-governance/), Cursor (plugins/api-governance-cursor/skills/coderifts/) and Codex/OpenAI (plugins/api-governance-openai/skills/api-governance/) — carry the same body byte for byte and the same name: coderifts, the name skills.sh lists (npx skills add coderifts/api-governance installs ./.agents/skills/coderifts/, measured 2026-09-29). Only the frontmatter description is per host. All three are generated by coderifts-app scripts/generate-skill-carriers.js from agent/skills/coderifts/SKILL.md; test/one-skill.test.js holds them together. The website's .well-known/agent-skills/coderifts/SKILL.md is the Cursor carrier, vendored.

MCP server

CodeRifts runs as a hosted Streamable HTTP MCP server. Any MCP-compatible agent (Claude Desktop, Cursor, LangGraph, AutoGen, custom) can connect and run governance checks before tool calls or merges.

  • Endpoint: https://app.coderifts.com/mcp
  • Transport: Streamable HTTP (protocol version 2025-06-18)
  • Server: CodeRifts API Governance v1.0.3 — read from initialize → result.serverInfo.version on 2026-09-24. A version typed into a README is a claim with a date on it; npm run validate:tools-wire compares the TOOLS to the live server on every push, pull request and daily cron, but nothing compares this line, so re-read it rather than trust it.
  • Auth: initialize, tools/list and an analyze tools/call need no key (measured live 2026-09-26

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

Ask PopNx