Skip to content
Agentmart
Submit a tool

nifi-clickhouse-kafka-mcp

Read-only Apache NiFi, ClickHouse and Kafka access with OIDC, audit and secret masking

Connector by arogan178 · GitHub account verified by the MCP Registry

IndexedApache-2.0Local (stdio)
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/arogan178-nifi-clickhouse-kafka-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Read-only Apache NiFi, ClickHouse and Kafka access with OIDC, audit and secret masking

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 26, 2026.

Tools
12 read · 1 write · 0 delete · 17 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Tools by what they do 30

Read from the source code; the running server may list different tools.

Read 12 · Look things up without changing anything.

  • clickhouse_describe_table
  • clickhouse_health
  • clickhouse_search_columns
  • kafka_consumer_groups
  • kafka_describe_topic
  • kafka_sample
  • kafka_search
  • kafka_topics
  • nifi_health
  • nifi_provenance
  • nifi_search
  • nifi_status

Write 1 · Create, change, send or run things.

  • nifi_processor_state

Not yet classified 17 · We could not tell from the name and description.

  • clickhouse_databases
  • clickhouse_query
  • clickhouse_tables
  • environments
  • kafka_cluster
  • kafka_consumer_lag
  • nifi_bulletins
  • nifi_component
  • nifi_controller_services
  • nifi_flow_tree
  • nifi_flowfile
  • nifi_parameter
Show 5 more tools
  • nifi_parameters
  • nifi_process_group
  • nifi_provenance_event
  • nifi_queue
  • wrapper

Secrets and settings it asks for

Other settings (environment variables or headers).

  • NIFI_CLICKHOUSE_KAFKA_MCP_CONFIG

Network hosts it talks to 1

  • github.com · found in code

Tools (30)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • clickhouse_databases

    Databases with their engine, table count and total size.

  • clickhouse_describe_table

    Columns (name, type, default, comment) plus engine, sorting, primary and partition keys and size of a table.

  • clickhouse_health

    Server health in one call: version and uptime, replicas with problems, disk use, partitions with the most active parts, longest running queries, merges, unfinished mutations and errors in the last hour. Checks the user can't read come back as an error string instead of failing the whole call.

  • clickhouse_query

    Run one read-only ClickHouse statement (SELECT, WITH, SHOW, DESCRIBE, EXISTS, EXPLAIN). Rows come back as lists in column order. The result stops at max_rows (capped by the server setting) or the size cap and then says truncated; a truncated result is not a complete answer. Put values in params and reference them as {name:Type}, e.g. WHERE id = {id:UInt64}. Only table functions that read ClickHouse itself (numbers, merge, clusterAllReplicas, ...) are allowed; url, s3, file, remote and the like are refused. Before heavy queries run EXPLAIN ESTIMATE <query> to see rows and marks to read.

  • clickhouse_search_columns

    Find columns whose name or comment contains a string (case-insensitive), across all user tables.

  • clickhouse_tables

    Tables and views with engine, rows, size and comment, sorted by database and name. contains filters on the table name (case-insensitive). Works for Kafka, S3 and other engines because it only reads metadata.

  • environments

    The environments this server can read, with their description and which systems each one has.

  • kafka_cluster

    Brokers, controller, topic and partition counts, and under-replicated or offline partitions.

  • kafka_consumer_groups

    List consumer groups (id and state) sorted by id, optionally filtered by a substring. with_lag adds total lag, partitions with committed offsets and topics for each group on the page; it costs one offsets lookup per group, so keep limit small.

  • kafka_consumer_lag

    Committed offsets and lag per partition for an existing consumer group (see kafka_consumer_groups). behind_retention marks partitions where the committed offset is older than the earliest retained message, so the group has already lost data there.

  • kafka_describe_topic

    Partitions with earliest/latest offsets and non-default configs of a Kafka topic.

  • kafka_sample

    Read up to 50 messages from one partition without joining any consumer group. start is "latest" (the last messages), "earliest", an offset, an ISO timestamp or relative "-1h". earliest == latest means the partition is empty. Keys, values and headers are decoded (JSON, text, Schema Registry Avro/JSON Schema when configured, else base64) and masked.

  • kafka_search

    Scan all partitions of a topic for messages matching every given filter, without joining a group. key: the message key equals this string. contains: substring of the value text (JSON and decoded Avro values are matched as JSON with masked fields already masked). field + value: a dotted JSON path (e.g. "player.id", list indexes allowed) whose value, as a string, equals value. start: "earliest", an ISO timestamp, or relative "-30m"/"-1h"/"-2d". end: same formats, default now. Stops after limit matches, max_scan messages scanned (at most 1,000,000) or max_seconds (at most 120); "idle" means no m…

  • kafka_topics

    List Kafka topics sorted by name, optionally filtered by a substring.

  • nifi_bulletins

    Recent NiFi bulletins (warnings and errors), optionally for one component.

Show 15 more tools
  • nifi_component

    Full configuration of one NiFi component, without property descriptors. Sensitive properties come back masked. For parameters use nifi_parameters.

  • nifi_controller_services

    Controller services of a process group and its ancestors, with their state. include_descendants also lists services of all child groups.

  • nifi_flow_tree

    Process group hierarchy with ids, queued data and processor counts by state, down to depth levels. Groups below depth show only child_groups. Flow status is cached for 60 seconds.

  • nifi_flowfile

    Attributes of one queued FlowFile (see nifi_queue), optionally with content[offset:offset+length]. cluster_node_id comes from nifi_queue. Content is text (JSON re-serialized with masked fields masked) or {"base64", "bytes"} for binary; offsets count characters of text or bytes of binary, and next_offset is None at the end; content_size is in bytes. Content is read up to 5 MB.

  • nifi_health

    Problems in a flow in one call, worst first. Connections at or over back_pressure_percent of their object or size threshold, invalid processors, controller services that are not enabled or are invalid, error bulletins, stopped processors. Each section has the total and at most limit items. Flow status is cached for 60 seconds.

  • nifi_parameter

    One NiFi parameter's value, value[offset:offset+length]; next_offset is None at the end. context is a context name or id. Data is cached for 60 seconds.

  • nifi_parameters

    Parameters of all readable NiFi parameter contexts, sorted by context and name. context matches a context name or id exactly; name_contains and value_contains are substrings. Values are cut to max_value_chars (value_length is the full length); use nifi_parameter for the rest. Sensitive values come back masked. Data is cached for 60 seconds.

  • nifi_process_group

    Contents of a process group: child groups, processors, connections with queue sizes, ports.

  • nifi_processor_state

    Stored state of a processor, e.g. the last listed timestamp or maximum column values. Local state is per node on a cluster. Values are masked like everything else.

  • nifi_provenance

    Search NiFi provenance events of a component (processor, port, ...) and/or a FlowFile. At least one of component_id or flowfile_uuid is required. start/end: ISO timestamps or relative "-30m"/"-1h"/"-2d". limit is at most 1000. Use nifi_provenance_event for attributes and content.

  • nifi_provenance_event

    One provenance event (see nifi_provenance) with attributes, previous values that changed, and content. cluster_node_id comes from nifi_provenance. content_side "input" or "output" adds that side's content[offset:offset+length], decoded as in nifi_flowfile; content_size is in bytes.

  • nifi_queue

    FlowFiles at the head of a connection's queue (NiFi lists at most 100), with total queue size. Use an item's uuid and cluster_node_id with nifi_flowfile.

  • nifi_search

    Search the NiFi flow for components by name, id, property or type. Returns one paged list; each item has a kind (processor, connection, parameter, ...) and up to 5 matches.

  • nifi_status

    NiFi version, controller status (threads, queued data, component counts) and cluster node summary.

  • wrapper

Signals

Stars
0
Forks
0
Open issues
0
Weekly downloads
141
Last commit
Oct 19, 2026 (9 days ago)
Last release
Oct 19, 2026 (9 days ago)
Last package publish
Oct 19, 2026 (9 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.arogan178/nifi-clickhouse-kafka-mcp
Version
0.1.0
Auth
No auth
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 25, 2026
Cite this page

nifi-clickhouse-kafka-mcp. Agent Mart. https://agentmart.dev/connectors/arogan178-nifi-clickhouse-kafka-mcp (last updated 2026-10-25)