Introducing snctl 1.0: Your One-Stop CLI for All StreamNative Interactions

We are thrilled to announce the v1.0 version of snctl, a unified command-line interface (CLI) designed to simplify and streamline your interactions with Apache Pulsar, Apache Kafka, and the entire StreamNative ecosystem. Whether you’re working with Pulsar protocol, Kafka protocol (including Ursa clusters), or the comprehensive range of StreamNative Cloud resources, snctl consolidates it all into one convenient place.
The Journey: From Fragmented Tools to a Unified Experience
Historically, users of StreamNative have relied on multiple tools to manage different parts of their data infrastructure:
- pulsarctl or pulsar-admin to interact with Pulsar clusters
- Kafka CLI to manage Kafka-enabled clusters (including Ursa-engine clusters)
- kcctl to work with Universal Connect (Kafka Connect connectors)
- snctl for managing StreamNative Cloud resources (instances/clusters, infrastructure pools, service accounts, users, etc.)
While each individual tool served its purpose, juggling multiple CLIs meant juggling multiple configuration files, authentication flows, and usage patterns. Recognizing this fragmentation, we launched an initiative to consolidate these disparate tools into a unified experience – one that also aligns with our broader initiative for consistent workflows across CLI, Infrastructure-as-Code, and Kubernetes operators.
One CLI to Rule Them All: Introducing the new snctl
Snctl v1.0 is the product of that consolidation effort, bringing all the functionalities of the separate CLIs under one command:
- Pulsar Admin/Client Operations: Full support for Apache Pulsar management and data operations, including:
- Complete pulsarctl command set for comprehensive cluster administration by snctl pulsar admin sub-commands
- Native Pulsar client capabilities for producing and consuming messages
- Seamless management of topics, subscriptions, schemas, and all Pulsar resources
- Kafka Admin/Client Operations: Comprehensive Kafka protocol support on StreamNative Cloud:
- Complete administration for topics, partitions, and consumer groups
- Integrated management of Schema Registry and Kafka Connect
- Built-in client capabilities for producing and consuming messages
- Unified experience across all Kafka-compatible endpoints
- StreamNative Cloud Resource Management: Create and manage instances/clusters, configure infrastructure pools, handle service accounts and users, and more.
By consolidating these capabilities into a single CLI, snctl eliminates the headache of constantly switching contexts and tools. One configuration, one workflow, and one command-line tool to rule them all.
See It in Action
Curious to learn more about how this consolidated CLI simplifies operations? Watch our demo video to see snctl in action. You’ll get a walkthrough of its core commands, see how easy it is to manage different resources, and discover advanced features that help you automate complex tasks.
Getting Started with snctl
Below is a quick start guide to downloading and installing snctl, followed by examples for both StreamNative Cloud and self-managed environments. For full details, check out our documentation.
1. Download and Install
You can use the curl command or Homebrew to install snctl on a Mac. For installing it on Linux or Windows, please refer to our documentation.
Using curl command:

Using Homebrew:

Upgrading to v1.x:
When upgrading from snctl v0.x to v1.x, please run snctl config init again to ensure all newly introduced configuration settings are applied to your local configuration file.
2. Use snctl with StreamNative Cloud
Getting started with StreamNative Cloud is now easier than ever with snctl. Follow these steps to connect and start managing your resources:
- Authentication - Two flexible options to secure your connection:
- User Authentication:snctl auth login
This interactive flow opens your browser for a secure login experience.
- Service Account Authentication:snctl auth activate-service-account --key-file /path/to/credentials.json
Perfect for CI/CD pipelines and automated workflows. Please visit https://docs.streamnative.io/docs/service-accounts for details about the Service Account. - Organization Selection - Define your working context:
<br />
- Set a default organization:snctl config set --organization <organization_id>
<br />
- Or specify per command:snctl -O <organization_id> <command>
- Cluster Context - Seamlessly switch between your Pulsar clusters:
<br />
- Interactive selection:snctl context use
Brings up a user-friendly menu to browse and select your available clusters.
<br />
- Direct specification:snctl context use --pulsar-instance <instance> --pulsar-cluster <cluster>
Ideal when you know exactly which cluster you need.
- Pulsar & Kafka Operations - Unified syntax for all your messaging tasks:
- Pulsar data operations:snctl pulsar client produce --topic my-tenant/my-namespace/my-topic --message "Hello, StreamNative!"
- Pulsar admin tasks:snctl pulsar admin tenants list
- Kafka data operations:snctl kafka client consume --topic my-topic --from-beginning
- Kafka administration:snctl kafka admin topics list
- Service Account Impersonation - Run commands with different permissions:
- Specify a service account directly:snctl pulsar admin namespaces list --as-service-account my-function-sa
- Interactive selection:snctl kafka admin consumer-groups list --use-service-account
This feature is especially valuable when managing connectors and functions that require specific access controls.
With these straightforward steps, snctl empowers you to manage your entire StreamNative Cloud ecosystem from a single, consistent interface.
3. Use snctl with Self-Managed Pulsar or Kafka
If you're running your own Pulsar or Kafka clusters, snctl can still serve as your unified CLI:
- Configure external contexts for Self-Managed Pulsar Cluster:

- Configure external contexts for Self-Managed Kafka Cluster:

One more thing – Run StreamNative MCP server with snctl
Building on the unified CLI experience of `snctl`, we're excited to introduce native integration with the StreamNative MCP Serve (Note: The MCP server is only available with snctl v1.1.0 or later. Please ensure you are using snctl v1.1.0 or above if you plan to use the MCP server). This powerful addition connects your messaging infrastructure directly with the world of AI agents, providing a bridge between your streaming data and the latest generation of AI tools.
What is the StreamNative MCP Server?
The StreamNative MCP Server (streamnative-mcp-server) implements the Model Context Protocol specifically for data streaming platforms. This lightweight bridge enables people to instruct AI agents interacting with any Pulsar cluster, any Kafka cluster, or any StreamNative Cloud environment through natural language.
The Power of snctl MCP Integration
With the new snctl mcp command, you can now:
1. Start a StreamNative MCP Server directly from your CLI: Launch a fully configured MCP server that connects to your current snctl service context with a single command.
2. Enable AI agent interactions: Give AI assistants like Claude or other MCP-compatible agents the ability to read from, write to, and administer your streaming resources through natural language.
3. Maintain consistent authentication: The MCP server inherits authentication from your current `snctl` context, ensuring secure access to your resources.
4. Leverage your existing configuration: The MCP server automatically configures itself based on your current `snctl` context, whether it's a StreamNative Cloud instance or an external Pulsar/Kafka cluster.
Using snctl MCP
Starting an MCP server with snctl is straightforward:

The MCP server requires a service account for authentication, which can be specified using either the `--as-service-account` flag with a specific service account name.
You can also control which features are enabled through the `--features` flag and restrict operations to read-only mode with the `--read-only` flag for enhanced security.
Security Considerations
The MCP Server integration is designed with security in mind:
1. Service Account Authorization: The MCP server operates with the permissions of the specified service account, ensuring proper access control.
2. Read-Only Mode: For sensitive environments, you can enable read-only mode to prevent any modifications to your streaming resources.
3. Feature Restrictions: You can selectively enable only the features you need, limiting the scope of operations available to AI agents.
Getting Started
To get started with the MCP Server integration:
1. Ensure you're using snctl v1.1.0 or later
2. Set up your context using snctl context use or external context with snctl context use-external
3. Start the MCP server with snctl mcp stdio --as-service-account $SERVICE_ACCOUNT_NAME
4. Connect your MCP-compatible AI client (such as Claude Desktop, Cursor, or any MCP client) to the running server
With this powerful integration, you're now ready to bring the intelligence of AI agents to your streaming platform, enabling natural language interactions with your Pulsar and Kafka resources. Learn more in our MCP Server announcement blog or catch the details in our MCP video series.
The MCP Server integration represents another step in our mission to provide a unified, consistent experience across all StreamNative interactions, making your data streaming infrastructure more accessible and easier to manage than ever before.
What’s Next?
With the first milestone achieved – unifying all CLI functionality – our team is already working to bring the same consistent user experience to Terraform and Kubernetes operators. Ultimately, our goal is for you to have a single set of mental models and workflows across your entire infrastructure stack, from command-line tools to Infrastructure-as-Code and beyond.
Join the Unified Revolution
No more toggling between separate CLIs or maintaining multiple sets of credentials. Whether you’re managing Pulsar clusters, Kafka-compatible deployments, or StreamNative Cloud resources, snctl is your single command line for them all. We invite you to:
- Download the latest version of snctl from our GitHub release page.
- Watch the demo video to view examples of commands.
- Share your feedback on our community channels or our help center. Let us know what works well and what you’d like to see next!
Embrace the unified CLI era, and say goodbye to fragmented tooling. With snctl, managing your data streaming workflows has never been simpler, faster, and more consistent.
Happy streaming with snctl!
Newsletter
Our strategies and tactics delivered right to your inbox