Lenses
Manage, explore, transform and join data across multiple clusters using different flavours of Apache Kafka via Lenses.io (including the free Community Edition)
🌊🔍 Lenses MCP Server for Apache Kafka 🔎🌊
This is the Lenses MCP (Model Context Protocol) server for Apache Kafka. Lenses offers a developer experience solution for engineers building real-time applications connected to Kafka. It's built for the enterprise and backed by a powerful IAM and governance model.
With Lenses, you can find, explore, transform, integrate and replicate data across a multi-Kafka and vendor estate. Now, all this power is accessible through your AI Assistant or Agent via this Lenses MCP Server for Kafka.
See it explained and in action whilst walking through the streets of New York city!
Try it today with the free Lenses Community Edition (restricted by number of users and enterprise features). Lenses CE comes with a pre-configured single broker Kafka cluster, ideal for local development or demonstration. Connect up to two of your own Kafka clusters and then use natural language to interact with your streaming data.
Table of Contents
- 1. Install uv and Python
- 2. Configure Environment Variables
- 3. Add Lenses API Key
- 4. Install Dependencies and Run the Server
- 5. Optional Context7 MCP Server
- 6. Running with Docker
1. Install uv and Python
We use uv for dependency management and project setup. If you don't have uv installed, follow the official installation guide.
This project has been built using Python 3.12 and to make sure Python is correctly installed, run the following command to check the version.
uv run python --version
2. Configure Environment Variables
Copy the example environment file.
cp .env.example .env
Open .env and fill in the required values such as your Lenses instance details and Lenses API key.
3. Add Lenses API Key
Create a Lenses API key by creating an IAM Service Account. Add the API key to .env with the variable name, LENSES_API_KEY.
4. Install Dependencies and Run the Server
Use uv to create a virtual environment, install the project dependencies in it and then run the MCP server with the FastMCP CLI using the default stdio transport.
uv sync
uv run src/lenses_mcp/server.py
To run as a remote server, use the http transport.
uv run fastmcp run src/lenses_mcp/server.py --transport=http --port=8000
To run in Claude Desktop, Gemini CLI, Cursor, etc. use the following JSON configuration.
{
"mcpServers": {
"Lenses.io": {
"command": "uv",
"args": [
"run",
"--project", "<ABSOLUTE_PATH_TO_THIS_REPO>",
"--with", "fastmcp",
"fastmcp",
"run",
"<ABSOLUTE_PATH_TO_THIS_REPO>/src/lenses_mcp/server.py"
],
"env": {
"LENSES_API_KEY": "<YOUR_LENSES_API_KEY>"
},
"transport": "stdio"
}
}
}
Note: Some clients may require the absolute path to uv in the command.
5. Optional Context7 MCP Server
Lenses documentation is available on Context7. It is optional but highly recommended to use the Context7 MCP Server and adjust your prompts with use context7 to ensure the documentation available to the LLM is up to date.
6. Running with Docker
The Lenses MCP server is available as a Docker image at lensesio/mcp. You can run it with different transport modes depending on your use case.
Quick Start
Run the server with stdio transport (default):
docker run \
-e LENSES_API_KEY=<YOUR_API_KEY> \
-e LENSES_URL=http://localhost:9991 \
lensesio/mcp
Run the server with HTTP transport (listens on http://0.0.0.0:8000/mcp):
docker run -p 8000:8000 \
-e LENSES_API_KEY=<YOUR_API_KEY> \
-e LENSES_URL=http://localhost:9991 \
-e TRANSPORT=http \
lensesio/mcp
Run the server with SSE transport (listens on http://0.0.0.0:8000/sse):
docker run -p 8000:8000 \
-e LENSES_API_KEY=<YOUR_API_KEY> \
-e LENSES_URL=http://localhost:9991 \
-e TRANSPORT=sse \
lensesio/mcp
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
LENSES_API_KEY | Yes | - | Your Lenses API key (create via IAM Service Account) |
LENSES_URL | No | http://localhost:9991 | Lenses instance URL in format [scheme]://[host]:[port]. Use https:// for secure connections (automatically uses wss:// for WebSockets) |
TRANSPORT | No | stdio | Transport mode: stdio, http, or sse |
PORT | No | 8000 | Port to listen on (only used with http or sse transport) |
Legacy environment variables (for backward compatibility):
LENSES_API_HTTP_URL,LENSES_API_HTTP_PORTLENSES_API_WEBSOCKET_URL,LENSES_API_WEBSOCKET_PORT
These are automatically derived from LENSES_URL but can be explicitly set to override.
Transport Endpoints
- stdio: Standard input/output (no network endpoint)
- http: HTTP endpoint at
/mcp - sse: Server-Sent Events endpoint at
/sse
Building the Docker Image
To build the Docker image locally:
docker build -t lensesio/mcp .
Servidores relacionados
Scout Monitoring MCP
patrocinadorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
patrocinadorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Vibetest Use
A browser-agent QA swarm with an MCP interface for testing AI-generated websites.
Figma → Vue Design System
A Vue 3 component library with automated design token synchronization from Figma.
Stata-MCP
Perform regression analysis using Stata with the help of an LLM. Requires a local Stata installation and an external LLM API key.
Blockchain MCP Server
A server for blockchain interactions, offering Ethereum vanity address generation, 4byte lookup, ABI encoding, and multi-chain RPC calls.
Gemini Imagen 3.0
Generate high-quality images using Google's Imagen 3.0 model via the Gemini API.
hanabi-cli
A terminal AI chat interface for any LLM model, with file context, MCP, and deployment support.
MCP Chain of Draft (CoD) Prompt Tool
Enhances LLM reasoning by transforming prompts into Chain of Draft or Chain of Thought formats, improving quality and reducing token usage. Requires API keys for external LLM services.
Minecraft MCP Server
A Python MCP server to control a Minecraft server via RCON using FastMCP.
Unified.to MCP Server
Unified MCP Server is a remote MCP connector for AI agents and vertical AI products that provides access to 22,000+ authorized SaaS tools across 400+ integrations and 24 categories directly inside LLMs.
ndlovu-code-reviewer
Manual code reviews are time-consuming and often miss the opportunity to combine static analysis with contextual, human-friendly feedback. This project was created to experiment with MCP tooling that gives AI assistants access to a purpose-built reviewer. Uses the Gemini cli application to process the reviews at this time and linting only for typescript/javascript apps at the moment. Will add API based calls to LLM's in the future and expand linting abilities. It's also cheaper than using coderabbit ;)