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

NiFiMCP

by nifimcpversion 0.1.0-rc.1i★ –iRuns on your computer
Registry nameio.github.nifimcp/nifimcp

Install

Overview

Description from the maker (original English)

Evidence-backed, read-only Apache NiFi investigation: cited evidence and reviewable flow drafts

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

  • 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": {
    "nifimcp": {
      "command": "uvx",
      "args": [
        "nifimcp-server",
        "serve",
        "--config",
        "your-value"
      ]
    }
  }
}

Run this in your terminal

claude mcp add nifimcp -- uvx nifimcp-server serve --config your-value

This one needs values on its command line, so copy the settings and fill them in.

Or copy the settings yourself

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

{
  "mcpServers": {
    "nifimcp": {
      "command": "uvx",
      "args": [
        "nifimcp-server",
        "serve",
        "--config",
        "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 needs values on its command line, so copy the settings and fill them in.

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "nifimcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "nifimcp-server",
        "serve",
        "--config",
        "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.

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 nifimcp, 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 32505 servers in this category
  • Published to the registry more recently than 81% of the other 32505 servers in this category
  • Basic checks equal to or better than 100% of the other 32505 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 NiFiMCP 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.1.0-rc.1) reached the registry 7 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: Spec Driven Development, Remote Desktop Commander, topo^alpin

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

topo^alpin

by topoalpin.app

Avalanche bulletins and mountain weather forecasts for any place in the Alps.

Runs in the cloudUpdated 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.

NiFiMCP

Give AI the context to understand your NiFi flows, investigate failures with cited evidence, and draft what comes next.

Explore NiFiMCP · How it works · Bring us one critical NiFi workflow

NiFiMCP is an open-source Model Context Protocol server for evidence-backed Apache NiFi investigation. It reads; it does not change your NiFi.

Public preview 0.1.0rc1. Tested on Linux x86_64 with Python 3.12 against stock Apache NiFi 2.12.0

(single node, certificate authentication) and Claude Code. Live NiFi access is read-only; a flow draft is a

local file that an authorized person imports separately. Anything outside that boundary is listed as

untested or unsupported in the capability matrix. Expect rough edges and report them.

NiFiMCP is an independent project for Apache NiFi, founded and maintained by Lloyd Clark. It is not affiliated with, sponsored by or endorsed by the Apache Software Foundation or Cloudera. Apache NiFi and NiFi are trademarks of the Apache Software Foundation. Website: nifimcp.com.

1. Try NiFiMCP in one minute

The demo needs no NiFi, no model and no account. It replays evidence captured from a real NiFi 2.12.0 instance running a synthetic flow. With uv installed:

uvx --from nifimcp-server==0.1.0rc1 nifimcp demo --output ./nifimcp-demo

Open nifimcp-demo/report.html. Every statement in it links to the exact source bytes it came from.

2. Install

NiFiMCP needs Python 3.12. The package on PyPI is nifimcp-server and it installs the nifimcp command (nifi-mcp is an unrelated project, and PyPI treats nifimcp as the same name). 0.1.0rc1 is a pre-release, so pin the version:

uv tool install nifimcp-server==0.1.0rc1   # installs the nifimcp command

nifimcp --version

or, with pip in a Python 3.12 virtual environment, pip install nifimcp-server==0.1.0rc1.

From source, for development or to run the test suites:

git clone https://github.com/nifimcp/nifimcp.git

cd nifimcp uv sync --frozen uv run nifimcp demo --output ./nifimcp-demo

For machines without internet access, use the offline kit (hash-locked wheels, SBOM and licenses) from the GitHub release and follow docs/OFFLINE_INSTALL.md.

3. How it works

  1. Understand (preview): read scoped flows, configuration and live status through a read-only identity.
  2. Investigate (preview): follow evidence to a finding; unknowns stay explicit and every statement cites its source bytes.
  3. Propose (preview, experimental): generate a reviewable flow draft as local files; a person decides what to import, and the separate lab CLI can test it in a disposable NiFi first.
  4. Execute with approval (roadmap, not in this preview): no tool in this release changes NiFi.

4. Connect a scoped NiFi identity

NiFiMCP works in three modes:

ModeReads fromUse it for
demothe bundled synthetic capturetrying it out
bundleflow definitions and evidence bundles you registerair-gapped review, sharing a case
liveone NiFi 2.12.0 origin over HTTPS with mutual TLSinvestigating a running system

For live mode, create a dedicated NiFi identity (a client certificate) and give it read-only access to the process groups you want the assistant to see, nothing more:

NiFi policyNeeded for
view the user interface (/flow)every live call
view the component, on each scoped process groupdescribe and health
query provenance (/provenance) and view provenance, on each scoped grouptrace_feed, unmatched history
view the data, on each scoped groupprovenance queries and queue metadata sampling (NiFi 2.12.0 requires it for both)

NiFi's "view the data" policy would also let this identity open FlowFile content in the NiFi UI. NiFiMCP has no route to content, attribute dumps or replay, and only allowlisted attribute values leave the server. Without that policy, describe and health still work, and provenance and sampling return a permission error that names the missing policy.

Never grant write policies. NiFiMCP has no tool that modifies NiFi, and the scoped identity is your second line of defense. Then write an operator config (docs/CONFIGURATION.md) and check it:

nifimcp doctor --config operator.json

Add the server to your MCP host:

{

"mcpServers": { "nifimcp": { "command": "uvx", "args": ["--from", "nifimcp-server==0.1.0rc1", "nifimcp", "serve", "--config", "/path/to/operator.json"] } } }

The recorded Claude Code sessions in evidence/host/ used the source-checkout form of the same command (uv run --frozen --project /path/to/nifimcp nifimcp serve --config ...). Other MCP hosts that launch stdio servers should work with the same command but have not been tested.

5. Five useful prompts

  1. "Explain the flow in scope orders-intake for an on-call operator who did not build it. Cite evidence and list unknowns."
  2. "Events are piling up on connection . Investigate the last hour and separate observed facts, plausible explanations and missing evidence."
  3. "Trace FlowFile through scope orders-intake between 09:00 and 10:00 UTC. Where did it go and what can't you see?"
  4. "Compare the flow definitions I registered as before and after. What changed in routing and queue settings?"
  5. "Draft an attribute router that sends status=critical to out_critical, standard to out_standard and everything else to out_unmatched. Validate it and give me labeled test cases."

The server also ships three MCP prompts: explain_this_flow, investigate_this_feed and draft_bounded_routing_flow.

6. What it actually does

ToolWhat it returns
get_capabilitiesmode, scopes, limits, NiFi version and which features are available
describe_flowbounded graph, parameters, services and fixed-rule configuration findings
get_flow_healthtimestamped status, queues, bulletins and labeled hypotheses
trace_feedprovenance timeline for one exact FlowFile UUID, filename or approved indexed attribute (max 24 h)
inspect_unmatchedwhat feeds an unmatched route, its recent events and an optional metadata sample
compare_flow_snapshotsvalue-safe structural diff of two registered snapshots
export_investigationthe investigation as JSON or a self-contained HTML report
get_processor_catalogthe pinned NiFi 2.12.0 processor catalog used for drafts
validate_flow_planstatic checks of a proposed subflow
draft_flowa stopped, local NiFi flow definition plus a review page and receipt

Every result uses one envelope: status, scope, source version, collection time, evidence records (source hash plus JSON pointer), findings labeled as *observed*, *static rule*, *hypothesis* or *operator note*, explicit gaps, and the limits that were applied.

A non-AI command line covers the same ground: nifimcp describe, investigate, report, draft, register, unregister and catalog. Run nifimcp --help. For a sample subflow plan, run nifimcp draft --example attribute_router > plan.json, then nifimcp draft --plan plan.json --output ./draft.

7. Three separate things: investigate, draft, execute

StepWho writes to NiFiIdentityWhere
Investigate (describe_flow, get_flow_health, trace_feed, inspect_unmatched, export_investigation)nobodyyour read-only observer certificateyour NiFi, over 14 allowlisted read endpoints
Draft (validate_flow_plan, draft_flow)nobodynone; no NiFi connection is usedlocal files in the artifact directory
Verify a draft (scripts/lab_verify_draft.py, optional)the separate lab CLIthe lab's own admin certificate, which exists only inside the disposable container the lab createda throwaway NiFi container on 127.0.0.1, deleted afterward

In the recorded Claude Code session the assistant drafted a router with draft_flow, which wrote files and touched no NiFi. The import you see in evidence/host/*/lab-verification/ was done afterward by the lab CLI with the lab admin certificate (CN=nifimcp-lab-admin) through NiFi's upload endpoint, into a scratch group of a container that was then destroyed. The MCP server has no upload, start or deploy route, and the observer identity holds no write policy. Execution against a real NiFi is not part of this release. It is planned as a separate, approval-controlled component.

8. Boundaries

  • Read-only. No start, stop, delete, upload or deploy tool exists. Drafts are local files and never touch NiFi.
  • Scoped. Only configured process groups are visible; out-of-scope IDs are refused without revealing whether they exist. Clusters are refused.
  • Bounded. Hard limits on time windows, events, components, depth, sample size, result size and run time.
  • No content. FlowFile content is never read. Attribute values appear only when allowlisted. Sensitive values, secret-like literals and common credential shapes are masked (best-effort pattern matching).
  • No hidden calls. No telemetry, no update checks, no embedded model. Only allowlisted NiFi REST endpoints.
  • Honest about evidence. Current settings are never presented as the cause of a past event. Empty provenance results are not proof that data never existed. A SEND event is not proof of downstream receipt.
  • Drafts are experimental. A draft passes static checks only. Runtime behavior is unknown until the separate lab CLI imports it into a disposable NiFi and runs labeled cases.
  • Your model is yours. NiFiMCP itself runs without network access, but it embeds no model: the MCP host supplies the model and may send tool results to its provider. A fully offline AI setup has not been tested here.

NiFi names, messages and attributes are treated as untrusted text. Your MCP host's model still decides what to say; check its claims against the cited evidence.

9. Known limits of this preview

Three acceptance gates are BLOCKED, not passed, and they matter in practice:

GateWhat it means for you
ClustersA clustered NiFi is detected and refused in live mode (UNSUPPORTED_TOPOLOGY). Bundle mode still reviews exported flow definitions from any NiFi. Safe read-only cluster support is the first roadmap item.

| Other platforms | Only Linux x86_64 has run the test suites. macOS, Windows and ARM are untested; the code is pure Python and may well run, but nobody has checked file p

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

Ask PopNx