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

Nifra docs

by nifrajsversion 5.12.1i★ –iRuns in the cloud
Registry nameio.github.nifrajs/nifra-docs

Install

Overview

Description from the maker (original English)

Nifra docs, runnable examples, and API types as an MCP server for any AI assistant.

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.

Install

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

Before you install

You need

Which app do you use?

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

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3
https://mcp.nifra.dev

Run this in your terminal

claude mcp add --transport http nifra-docs https://mcp.nifra.dev

Open in Cursor

Or copy the settings yourself

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

{
  "mcpServers": {
    "nifra-docs": {
      "url": "https://mcp.nifra.dev"
    }
  }
}

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": {
    "nifra-docs": {
      "type": "http",
      "url": "https://mcp.nifra.dev"
    }
  }
}

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.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3
https://mcp.nifra.dev

Menu names can differ slightly by plan and over time.

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

Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.

  • nifra_docs

    Search nifra's framework documentation and get back ONLY the matching sections - auth, uploads, ISR, WebSockets, loaders, deployment, anything. Call with no query for the cheap section index; pass query (e.g. "isr revalidate") for the top matching sections. Use this instead of re

  • nifra_example

    Get a verified, copy-pasteable Nifra code example for a task - auth route, file upload, ISR page, loader/action, typed client, SSE, deployment, and more. Every snippet is typechecked against the installed Nifra version, so it compiles as-is. Returns code as text for direct use. C

  • nifra_types

    Get the exact TypeScript declaration of any exported @nifrajs/* symbol - interface, type, class, function, or const. Each signature is generated from the package's built .d.ts and returns the complete declaration rather than prose. Pass `name` for an exact symbol (e.g. "RateLimit

  • nifra_learn

    Walk the guided path to build a nifra app end to end - an ORDERED sequence (create → page route → loader → typed API → typed client → auth → background jobs → deploy), not the random-access search of nifra_docs/nifra_example. Call with no args for the step index; pass `step: N` f

  • nifra_frontend

    Diagnose a client-side Nifra problem by symptom across every adapter (React, Preact, Solid, Vue, Svelte, and vanilla). Returns the likely cause, a concrete fix, and how to verify it. Covers the Nifra server/client seam, hydration mismatches, duplicated framework runtimes, loader-

  • nifra_runtime Looks like an instruction to the AI

    Explain a behavior that differs between Bun, Node, Deno and Cloudflare Workers by symptom. These are runtime behaviors, not Nifra's: request-target and Host handling, pipelining, JSON content-type, engine error messages, recursion depth, .env loading, and runtime-specific APIs. R

  • nifra_gallery

    Open an interactive, filterable gallery of ALL of nifra's verified code examples (MCP Apps widget) - for browsing and discovering what exists. NOT for fetching one snippet as text: use nifra_example for that. Pass query to pre-filter; the widget also filters client-side.

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

  • ✓ Pass

    Maker matches the repo

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

  • ✓ Pass

    Endpoint responds

    Responded in 435 ms (HTTP 200)

  • – Not applicable

    Sign-in with OAuth

    No sign-in needed

  • ✕ Fail

    No hidden instructions in tool descriptions

    1 tool descriptions contain text that looks like instructions to the AI. Read them below before installing

Compared with others in Otheri

  • More stars than 0% of the other 32688 servers in this category
  • Published to the registry more recently than 90% of the other 32688 servers in this category
  • Basic checks equal to or better than 37% of the other 32688 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 Nifra docs safe?

It passed 2 of 3 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 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 (5.12.1) reached the registry 3 days 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, 御府和田玉 在售作品查询

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 2 days 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.

Nifra

The AI-native TypeScript framework.

Typed APIs and full-stack SSR on five UI libraries, one app across Bun, Node, Deno, and the edge -

built so both humans and coding agents can change it safely.

= 1.3">

Documentation · Playground · Benchmarks · vs. other frameworks


Nifra is for software that is built, operated, and used with agents in the loop.

An agent should not be a chat bubble bolted onto an app, or a coding assistant guessing at an API. It should discover the real contract, call typed capabilities, stream progress into the UI, ask for approval at the right boundary, update state optimistically, reconcile with the server, and leave evidence that the work actually happened. Nifra makes that one system:

  • Build surface: typed APIs, runtime schemas, a no-codegen client, full-stack SSR, and one app across five UI libraries and five runtimes.
  • Agent surface: page-local WebMCP, remote MCP/MCP Apps, A2A, and AG-UI from the same capability and tool contracts.
  • Execution surface: bounded agent turns, budgets, approvals, idempotency, cancellation, resumable evidence, and provider-neutral model ports.
  • UI surface: deterministic predictive UI, shared run state, streamed deltas, human-in-the-loop decisions, content-free browser views, and Run Studio.
  • Proof surface: live MCP project context plus typecheck, route assurance, effect provenance, manifests, and contract-derived verification gates.

One contract. Every surface.

The central design decision is simple: define the capability once, then project it to the surface that fits the moment. A page-local agent can use WebMCP while the page is open; a background agent can use remote MCP; another agent can use A2A; a human-facing client can consume AG-UI. They still meet the same typed validation, authorization, approval, output, and evidence boundary.

import { t } from "@nifrajs/schema"

import { defineAgentCapability, registerWebMcpTools } from "@nifrajs/webmcp"

export const addToCart = defineAgentCapability({ name: "cart.add", description: "Add a product to the current cart.", input: t.object({ sku: t.string(), quantity: t.number() }), output: t.object({ cartVersion: t.string() }), writes: ["cart"], execute: (input) => addItemOnTheServer(input), predict: ({ input, version }) => ({ baseVersion: version, patch: [{ op: "add", path: "/items/-", value: input }], }), })

// Explicit page-local discovery. Unsupported hosts receive a safe no-op report. await registerWebMcpTools([addToCart])

The same addToCart.tool can be projected into Nifra's remote MCP adapter or called by an agent runner. Predictions are deterministic application code - not LLM guesses - and commit, rollback, conflict, expiry, and authoritative reconciliation are explicit outcomes.

See the WebMCP and predictive UI guide and the agent layer.

Start with a typed backend

bun create nifra my-app # scaffold the API starter

cd my-app bun install bun run dev

For a full-stack React app with SSR:

bun create nifra my-app --template site --framework react

Or add a backend to an existing project:

bun add @nifrajs/core @nifrajs/schema @nifrajs/client
import { server } from "@nifrajs/core/server"

import { t } from "@nifrajs/schema"

export const app = server() .get("/users/:id", (c) => ({ id: c.params.id })) .post("/users", { body: t.object({ name: t.string() }) }, (c) => ({ id: crypto.randomUUID(), name: c.body.name, }))

The client is inferred from the server type - no codegen, no duplicated schema, no stale SDK:

import { client } from "@nifrajs/client"

import type { app } from "./server"

const api = client ("http://localhost:3000") const result = await api.users({ id: "42" }).get()

if (result.ok) result.data.id // route return type, checked by tsc else result.error // failures are returned, never thrown

Change a route and every caller stops compiling until it is updated. Add loaders, actions, streaming, defer()/ , islands, query cache, progressive-enhancement forms, and server functions when the app grows. The same web layer runs on React, Vue, Solid, Svelte, or Preact.

The web layer also keeps pages fresh and fast without a second data layer:

  • Live refresh - a loader names the keys it read with live(...); a publish reloads only those loaders on every open tab, through the same middleware, gates and loaders a navigation runs.
  • Partial prerendering - the part of a page every visitor shares is served from a cache at once, and each per-visitor hole streams in as its loader settles.
  • Server components on all five adapters - React RSC/Flight, and native server-rendered ranges for the others.
  • Keep-alive - back and forward bring a page back with its state, scroll and focus.
  • SSG and ISR with tag purges that clear data caches, the page store, live pages and the CDN in order, so a writer reads its own write.

Agentic backend: bounded, typed, observable

Nifra also provides the runtime for applications whose product is an agent. The model provider, credentials, durable state, tenancy, and policy are injected ports; the framework owns the safety and execution semantics around them.

import { createAgentState, runAgent } from "@nifrajs/agent"

const result = await runAgent(definition, { value: input }, ports, { state: createAgentState("support-1"), maxTurns: 8, })

You get typed tool contracts, bounded turns and budgets, approvals, cancellation, idempotency, resumable token-only evidence, model/token streaming, transient shared state, and composable telemetry. A failed post-turn gate can become a bounded repair turn in the standalone nifra-agent host. The local process and extension adapters contain crashes and accidents; they are not hostile-code sandboxes.

Agentic UI: from intent to visible state

The UI is not an afterthought. Nifra gives an agent several deliberate ways to interact with an app:

SurfaceBest forNifra's contract
WebMCPAn agent acting in the currently open pageExplicit tool allowlists, typed inputs/outputs, bounded receipts, deterministic prediction, versioned reconciliation
MCP / MCP AppsRemote tools, background work, and rich tool resultsThe same core tool projected to remote MCP and ui:// widgets
AG-UIStreaming an agent run into a product UISSE lifecycle, text/reasoning/tool deltas, shared-state snapshots/deltas, resumable evidence, typed resume
Agent App / WorkbenchBrowser and desktop control planesNegotiated features, approvals, handoffs, decision inbox, capability registry, Run Studio

For a predictive interaction, the application supplies a pure patch and a reconciliation rule. The store applies it atomically, then either accepts authoritative server state or reports rollback, conflict, or expiry. The human UI remains fully functional when no agent host is present.

Interoperate without rewriting the agent

The runner is the center; protocol adapters are edges:

  • @nifrajs/mcp exposes tools and MCP Apps.
  • @nifrajs/webmcp exposes explicit page-local tools and predictive UI.
  • @nifrajs/a2a mounts an A2A 1.0 card plus JSON-RPC/SSE.
  • @nifrajs/ag-ui mounts AG-UI events over SSE.
  • @nifrajs/agent-app provides a backend-neutral browser client.
  • @nifrajs/coding-agent, @nifrajs/agent-protocol, and @nifrajs/pi provide a standalone coding-agent host; @nifrajs/acp drives any Agent Client Protocol agent through it.

Every protocol boundary still needs application authentication and authorization. Public reference adapters keep credentials, durable storage, tenant state, and operated policy outside the package so you can supply the right implementation for your deployment.

Give coding agents a live project, not stale docs

Register Nifra once and an agent can inspect the actual project, fetch version-checked examples and types, scaffold in the correct route directory, run HTTP/SSR/WebSocket checks, inspect recent requests, and loop on structured fixes:

claude mcp add nifra -- bunx nifra mcp

nifra init-agents

nifra context # live route and convention map nifra smoke # real SSR, API, auth and hydration requests against the build nifra check # typecheck, drift, and bundle-boundary gate nifra assure # route security evidence gate nifra levels # cumulative proof level and next missing rung

The local server runs where your code lives - your source never reaches Nifra. The teaching tools are also hosted at mcp.nifra.dev for agents that only need the verified Nifra corpus. Skills are available for Pi and Claude Code.

Proof, not promises

Agentic systems need more than “the model said it worked.” Nifra turns the important claims into gates:

nifra check

nifra assure nifra capabilities check nifra manifest diff nifra levels --min 1

  • nifra check catches type drift, raw calls around the typed client, server-only bundle leaks, and other contract violations.
  • nifra assure classifies the live route graph and fails when required authentication, validation, rate limiting, CSRF, or body-cap evidence is missing.
  • nifra capabilities check compares declared effect tokens with the module graph and a reviewed lockfile.
  • nifra manifest diff detects contract, assurance, effect, and response-sensitivity changes at promotion time.
  • nifra levels reports the highest cumulative proof level a project actually holds, from typed contract to contract-derived invariant tests.

Docs and examples are compiled against the live API, and the machine-readable MCP corpus is generated from built packages. An agent gets a repairable diagnostic instead of a stale suggestion.

Full-stack portability, without the framework tax

The app lifecycle is app.fetch(Request): Promise . Define it once and deploy to Bun, Node, Deno, Cloudflare Workers/Pages, or Vercel Edge with a small adapter. The web layer supports React, Vue, Solid, Svelte, and Preact without changing the route/data model.

The published snapshot in site/shared/data/benchmarks.json is the source of truth for the website tables and benchmark comparison articles. The benchmark suites merge fresh results into it through bench/site-bench.ts. The public tables include

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

Ask PopNx