Kurrentdb Mcp Server

by kurrent-io

198 downloads
Not rated
GitHub

About

This is a simple MCP server to help you explore data and prototype projections faster on top of KurrentDB.

Details

Author
kurrent-io
Downloads
198
Categories
Other, Database

- 8 tool calls for streams and projections
- Read events from any specific stream
- List all available streams in the database
- Write new events to a stream
- Build, create, update, and test projections
- Retrieve projection status and statistics
- AI-assisted projection code generation

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Kurrentdb Mcp Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Enable --run-projections=all and --start-standard-projections on KurrentDB. Then configure your MCP client (Claude Desktop, VS Code, Cursor, or Windsurf) with a JSON configuration that sets the command to uv run server.py (or python server.py) and provides the KURRENTDB_CONNECTION_STRING environment variable. Once configured, you can invoke any of the eight available tools through the client.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "kurrentdb mcp server": {
            "KurrentDB": {
                "type": "stdio",
                "command": "uv",
                "args": [
                    "--directory",
                    "C:\\Users\\iamyo\\work\\mcp-server",
                    "run",
                    "server.py"
                ],
                "env": {
                    "KURRENTDB_CONNECTION_STRING": "esdb://localhost:2113?Tls=false"
                }
            }
        }
    }
}

McpServers

{
    "KurrentDB": {
        "type": "stdio",
        "command": "uv",
        "args": [
            "--directory",
            "C:\\Users\\iamyo\\work\\mcp-server",
            "run",
            "server.py"
        ],
        "env": {
            "KURRENTDB_CONNECTION_STRING": "esdb://localhost:2113?Tls=false"
        }
    }
}

KurrentDB MCP Server

This is a simple MCP server to help you explore data and prototype projections faster on top of KurrentDB.

Recommended Usage

- Claude Desktop - Sequential Thinking MCP for complex tasks

Installation

KurrentDB Setup

You need to enable --run-projections=all and --start-standard-projections on KurrentDB The $streams stream is used to look for available streams.

MCP Client Setup (Claude or VS Code)

{
    "servers": {
      "KurrentDB": {
        "type": "stdio",
        "command": "uv",
            "args": [
                "--directory",
                "path to mcp-server folder",
                "run",
                "server.py"
            ],
	    "env": {
             "KURRENTDB_CONNECTION_STRING": "insert kurrentdb connection here"
        }
      }
    }
  }
This configuration file should work in Claude Desktop (https://modelcontextprotocol.io/quickstart/user) and VS Code (.vscode/mcp.json).

MCP Client Setup (Cursor or Windsurf)

{
  "mcpServers": {
    "kurrentdb": {
      "command": "python",
      "args": ["path to mcp-server folder\\server.py"],
      "env": {
             "KURRENTDB_CONNECTION_STRING": "insert kurrentdb connection here" 
         }
    }
  }
}
This configuration file should work in Cursor (\.cursor\mcp.json) and Windsurf (\.codeium\windsurf\mcp_config.json).

Overview

This MCP server is designed to make stream data available to the MCP client. It provides a simple interface for querying and retrieving stream data. It can also create, test and debug projections.

Access control is done using the KurrentDB connection string provided at configuration time as an environment variable.

Components

Tools

The servers exposes 8 tool calls: 1. read_stream 2. list_streams 3. build_projection 4. create_projection 5. update_projection 6. test_projection 7. write_events_to_stream 8. get_projections_status

Configuration

- ConnectionString: This is a KurrentDB connection string which includes user credentials. Depending on the client being used, this can come from environment variable or a JSON Configuration file like in Claude Desktop's case.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.