MCP server
by jordanburke
KuzuDB delivers robust database management with direct access to graph databases, Cypher query execution, and multi-agen
Connects to Kuzu graph databases to run Cypher queries and inspect schemas. Note: This server is archived as Kuzu database development was discontinued in October 2025.
KuzuDB is a community-built MCP server published by jordanburke that provides AI assistants with tools and capabilities via the Model Context Protocol. KuzuDB delivers robust database management with direct access to graph databases, Cypher query execution, and multi-agen It is categorized under databases, analytics data.
You can install KuzuDB in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
KuzuDB is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Enable Claude to query your database directly using natural language
Example
Ask 'Show me top 10 customers by revenue this month' and get SQL results instantly
Eliminate manual SQL writing for ad-hoc queries, get insights 10x faster
Generate complex reports and analytics without leaving conversation
Example
Analyze sales trends, cohort retention, user behavior patterns conversationally
Democratize data access—non-technical team members can query databases
Understand database structure, relationships, and data models
Example
'Explain the user_orders table schema and its relationships'
Onboard engineers faster, explore unfamiliar databases efficiently
Share your MCP server with the developer community
We wired KuzuDB into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
KuzuDB is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
KuzuDB is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
According to our notes, KuzuDB benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
KuzuDB has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
Strong directory entry: KuzuDB surfaces stars and publisher context so we could sanity-check maintenance before adopting.
KuzuDB is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
We wired KuzuDB into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
We evaluated KuzuDB against two servers with overlapping tools; this profile had the clearer scope statement.
KuzuDB is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
showing 1-10 of 32
⚠️ ARCHIVED: This project is archived as the Kuzu database repository was archived on October 10, 2025. See ARCHIVE_NOTICE.md for details and alternatives.
A Model Context Protocol server that provides access to Kuzu graph databases. This server enables LLMs to inspect database schemas and execute queries with robust connection recovery, multi-agent coordination, and a built-in web interface.
Archived - October 21, 2025
The Kuzu graph database repository was archived by its maintainers on October 10, 2025 and is now read-only. As Kuzu is no longer actively maintained, this MCP server is also being archived. The project remains fully functional with Kuzu v1.4.1-r.4. See ARCHIVE_NOTICE.md for full details, technical achievements, and alternative graph database options.
# Install globally
npm install -g kuzudb-mcp-server
# Quick test with auto-created database
pnpm serve:test # stdio transport (default)
pnpm serve:test:http # HTTP transport with Web UI
pnpm serve:test:inspect # HTTP with MCP Inspector
# Server management
pnpm kill # Stop running servers
pnpm restart # Restart with HTTP transport
# Clone and setup
git clone https://github.com/jordanburke/kuzudb-mcp-server.git
cd kuzudb-mcp-server
pnpm install
# Initialize databases
pnpm db:init # Empty test database
pnpm db:init:movies # Sample movie data
# Pull and run with mounted database
docker run -d -p 3000:3000 -p 3001:3001 \
-v /path/to/your/database:/database \
ghcr.io/jordanburke/kuzudb-mcp-server:latest
# Access Web UI at http://localhost:3001/admin
# MCP endpoint at http://localhost:3000/mcp
The server includes a powerful web interface that automatically starts with HTTP transport.
.kuzu backups and restore from browser# Start with Web UI (auto-enabled with HTTP)
pnpm serve:test:http
# Access Web UI
open http://localhost:3001/admin
# Using docker-compose (recommended)
docker-compose up -d
open http://localhost:3001/admin
# Manual Docker with Web UI
docker run -d \
-p 3000:3000 -p 3001:3001 \
-v /path/to/database:/database \
-e KUZU_WEB_UI_AUTH_USER=admin \
-e KUZU_WEB_UI_AUTH_PASSWORD=changeme \
ghcr.io/jordanburke/kuzudb-mcp-server:latest
/admin - Main web interface/health - Health check endpoint/api/info - Database information (JSON)/api/backup - Download database backup/api/restore - Upload and restore databaseThe server supports two authentication methods for different use cases:
Best for production deployments with token-based security:
# Testing OAuth locally
pnpm serve:test:http:oauth # admin/secret123
pnpm serve:test:inspect:oauth # With MCP Inspector
# Production OAuth setup
KUZU_OAUTH_ENABLED=true \
KUZU_OAUTH_USERNAME=admin \
KUZU_OAUTH_PASSWORD=your-secure-password \
KUZU_OAUTH_USER_ID=admin-user \
KUZU_OAUTH_EMAIL=admin@example.com \
KUZU_JWT_EXPIRES_IN=31536000 \
node dist/index.js /path/to/database --transport http
Simpler setup for development and testing:
# Testing Basic Auth locally
pnpm serve:test:http:basic # admin/secret123
pnpm serve:test:inspect:basic # With MCP Inspector
# Production Basic Auth setup
KUZU_BASIC_AUTH_USERNAME=admin \
KUZU_BASIC_AUTH_PASSWORD=your-secure-password \
KUZU_BASIC_AUTH_USER_ID=admin-user \
KUZU_BASIC_AUTH_EMAIL=admin@example.com \
node dist/index.js /path/to/database --transport http
Secure the Web UI interface:
# Add Web UI authentication
KUZU_WEB_UI_AUTH_USER=admin \
KUZU_WEB_UI_AUTH_PASSWORD=changeme \
node dist/index.js /path/to/database --transport http
Configure JWT token lifetime (OAuth mode only):
# Set token expiration in seconds (default: 31536000 = 1 year)
KUZU_JWT_EXPIRES_IN=3600 # 1 hour
KUZU_JWT_EXPIRES_IN=86400 # 24 hours
KUZU_JWT_EXPIRES_IN=2592000 # 30 days
{
"mcpServers": {
"kuzu": {
"command": "docker",
"args": [
"run", "-v", "/path/to/database:/database",
"--rm", "-i", "ghcr.io/jordanburke/kuzudb-mcp-server:latest"
]
}
}
}
{
"mcpServers": {
"kuzu": {
"command": "npx",
"args": ["kuzudb-mcp-server", "/path/to/database"]
}
}
}
# Install via Smithery - includes sample database
smithery install kuzudb-mcp-server
{
"mcpServers": {
"kuzu": {
"command": "npx",
"args": ["kuzudb-mcp-server"],
"env": {
"KUZU_MCP_DATABASE_PATH": "/path/to/database",
"KUZU_READ_ONLY": "true"
}
}
}
}
# Pull latest image
docker pull ghcr.io/jordanburke/kuzudb-mcp-server:latest
# Run with custom configuration
docker run -d \
-p 3000:3000 -p 3001:3001 \
-v /path/to/database:/database \
-e KUZU_READ_ONLY=false \
ghcr.io/jordanburke/kuzudb-mcp-server:latest
# HTTP server mode
node dist/index.js /path/to/database --transport http --port 3000
# With custom endpoint
node dist/index.js /path/to/database --transport http --port 8080 --endpoint /kuzu
# Auto-start inspector
pnpm serve:test:inspect
# Manual setup
node dist/index.js /path/to/database --transport http
npx @modelcontextprotocol/inspector http://localhost:3000/mcp
{
"mcpServers": {
"kuzu-remote": {
"uri": "http://localhost:3000/mcp",
"transport": "http"
}
}
}
Enable safe concurrent access from multiple AI agents (e.g., Claude Desktop + Claude Code):
{
"mcpServers": {
"kuzu": {
"command": "npx",
"args": ["kuzudb-mcp-server", "/path/to/database"],
"env": {
"KUZU_MULTI_AGENT": "true",
"KUZU_AGENT_ID": "claude-desktop",
"KUZU_LOCK_TIMEOUT": "10000"
}
}
}
}
# Install dependencies
pnpm install
# Build project
pnpm build
# Development with watch
pnpm dev
# Run tests
pnpm test
pnpm test:ui
pnpm test:coverage
# Linting and formatting
pnpm lint
pnpm typecheck
pnpm format:check
{
"mcpServers": {
"kuzu": {
"command": "node",
"args": [
"/path/to/kuzudb-mcp-server/dist/index.js",
"/path/to/database"
]
}
}
}
| Variable | Description | Default | Usage |
|---|---|---|---|
| Database | |||
KUZU_MCP_DATABASE_PATH | Database path if not in args | - | Startup |
KUZU_READ_ONLY | Enable read-only mode | false | Security |
| Connection | |||
KUZU_MAX_RETRIES | Connection recovery attempts | 2 | Reliability |
| Multi-Agent | |||
KUZU_MULTI_AGENT | Enable coordination | false | Concurrency |
KUZU_AGENT_ID | Unique agent identifier | unknown-{pid} | Locking |
KUZU_LOCK_TIMEOUT | Lock timeout (ms) | 10000 | Performance |
| Web UI | |||
KUZU_WEB_UI_ENABLED | Enable/disable Web UI | true | Interface |
KUZU_WEB_UI_PORT | Web UI port | 3001 | Network |
KUZU_WEB_UI_AUTH_USER | Web UI username | - | Security |
KUZU_WEB_UI_AUTH_PASSWORD | Web UI password | - | Security |
| Authentication | |||
KUZU_OAUTH_ENABLED | Enable OAuth | false | Security |
| `KUZU_OAUTH_ |
Run data quality queries to catch anomalies and inconsistencies
Example
Find duplicate records, missing values, orphaned foreign keys automatically
Maintain data integrity with less manual SQL work
Prerequisites
Time Estimate
15-30 minutes including configuration and testing
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
MCP server acts as bridge between Claude and database, translating natural language to SQL queries and returning results in structured format.
Protocols
Compatibility
✓ Use when
Use for ad-hoc data queries, exploratory analysis, report generation, schema exploration, and democratizing data access. Best for read-heavy analytics workloads.
✗ Avoid when
Avoid for production write operations, mission-critical transactions, real-time OLTP workloads, or when database contains sensitive PII without proper access controls. Use read replicas, not primary.