MCP Server for Confluent Manager for Apache Flink
Confluent Manager for Apache Flink (CMF) includes a Model Context Protocol (MCP) server that lets AI agents and coding assistants inspect and manage Apache Flink® resources directly, alongside the existing REST APIs and CLI Operations.
MCP is an open protocol that lets AI applications connect to external tools and data sources. When enabled, the CMF MCP server exposes environments, applications, statements, compute pools, secrets, savepoints, Kafka catalogs, and Kubernetes clusters as a set of tools that an MCP client can call.
Important
The CMF MCP server is disabled by default, because it’s a preview feature. The endpoint is versioned as v1alpha1 and might change in future releases.
Enable the MCP server
The MCP server is off by default and is configured through Helm values.
Helm value | Default | Description |
|---|---|---|
|
| Master switch for the MCP server. Must be |
|
| Enables the mutating tools that create, update, or delete resources. |
|
| Enables the |
To enable read-only access, upgrade your CMF Helm release with:
helm upgrade --install cmf confluentinc/confluent-manager-for-apache-flink \
--set cmf.mcp.enabled=true
To also allow AI agents to create, update, or delete resources, add:
helm upgrade --install cmf confluentinc/confluent-manager-for-apache-flink \
--set cmf.mcp.enabled=true \
--set cmf.mcp.writeTools.enabled=true
For general installation steps, see Installation with Helm.
Connect an MCP client
The MCP server uses the Streamable HTTP transport and is served at /cmf/mcp/v1alpha1 on the same host and port as the CMF REST API. Point your MCP client at this URL, for example:
http://<cmf-host>:8080/cmf/mcp/v1alpha1
Most MCP clients accept a URL-based server configuration. For example, using the Claude Code CLI:
claude mcp add --transport http cmf http://<cmf-host>:8080/cmf/mcp/v1alpha1
Consult your MCP client’s documentation for the exact configuration format it expects.
Available tools
Read-only tools
The MCP server exposes 19 read-only tools, plus get_flinkapplicationlogs, which is gated separately by cmf.mcp.logs.enabled.
Category | Tool | Description |
|---|---|---|
System |
| Returns CMF version and resource counts. Use this first to orient an agent session. |
Environments |
| Lists environments with their Kubernetes namespaces. |
Environments |
| Gets full configuration for one environment, including defaults and secret mappings. |
Applications |
| Lists applications in an environment with job status. |
Applications |
| Gets an application’s spec, status, and resource usage. |
Applications |
| Gets an application’s event history (deployments, status transitions, errors). |
Applications |
| Lists recent job instances for an application. |
Applications |
| Gets details of a single job instance, including its spec snapshot. |
Applications |
| Retrieves recent JobManager or TaskManager pod logs. |
Statements |
| Lists SQL statements in an environment, filterable by phase or compute pool. |
Statements |
| Gets a statement’s SQL text, phase, and status. |
Statements |
| Gets recent exceptions for a failing statement. |
Statements |
| Gets result rows for a running or completed |
Compute pools |
| Lists compute pools with phase and resource usage. |
Compute pools |
| Gets a compute pool’s spec, status, and resource usage. |
Savepoints |
| Lists savepoints for an application, statement, or detached savepoints. |
Savepoints |
| Gets full details of a single savepoint. |
Secrets |
| Lists registered secrets (values masked) and the environments they’re attached to. |
Catalogs |
| Lists Kafka catalogs, or a specific catalog’s databases. |
Kubernetes clusters |
| Lists registered Kubernetes clusters with connectivity and lifecycle state. |
Write tools
Write tools are only registered when cmf.mcp.writeTools.enabled is set to true. Clients are typically prompted to confirm before an agent calls one of these tools.
Category | Tool | Description |
|---|---|---|
Environments |
| Creates or updates an environment (idempotent). |
Environments |
| Deletes an environment. Fails if applications, statements, or compute pools still exist. |
Applications |
| Creates or updates an application (idempotent). |
Applications |
| Starts a suspended application, optionally from a savepoint. |
Applications |
| Suspends a running application. |
Applications |
| Deletes an application. |
Statements |
| Submits a SQL statement for execution in a compute pool. |
Statements |
| Resumes a stopped statement, optionally from a savepoint. |
Statements |
| Stops a running statement. |
Statements |
| Changes a statement’s parallelism, the only spec field mutable after creation. |
Statements |
| Deletes a statement. |
Compute pools |
| Creates a compute pool. |
Compute pools |
| Updates a compute pool’s spec. Rejected while statements are running on it. |
Compute pools |
| Deletes a compute pool. |
Secrets |
| Attaches a secret to an environment through a named mapping. |
Secrets |
| Detaches a secret mapping from an environment. |
Secrets |
| Deletes a secret. |
Savepoints |
| Triggers a savepoint for a running application or statement. |
Savepoints |
| Pins or unpins a savepoint to exempt it from automatic retention cleanup. |
Savepoints |
| Detaches an application savepoint into a standalone detached savepoint. |
Savepoints |
| Bulk-deletes savepoints by source and age. Pinned savepoints are never deleted. |
Savepoints |
| Registers a standalone savepoint that isn’t attached to any resource. |
Savepoints |
| Deletes a detached savepoint record, not the underlying storage data. |
Savepoints |
| Deletes a savepoint record attached to an application or statement. |
Resources and prompts
The MCP server also exposes a static resource and three guided prompts:
Resource | Description |
|---|---|
| Static reference text covering the object hierarchy, status and phase enums, and filter syntax. |
Prompt | Arguments | Description |
|---|---|---|
| environment, application | Chains |
| environment, statement | Chains |
| environment | Surveys all resources in an environment and their statuses for a health report. |
