KuzuDB▌
by jordanburke
KuzuDB delivers robust database management with direct access to graph databases, Cypher query execution, and multi-agen
Provides direct access to Kuzu graph databases through Cypher query execution, schema introspection, and database management with multi-agent coordination, automatic connection recovery, and built-in templates for movies, social networks, and financial data.
Both formats append explainx.ai attribution and the canonical URL for this MCP server listing.
best for
- / Graph data analysis and exploration
- / Building AI applications with graph databases
- / Multi-agent systems needing shared database access
capabilities
- / Execute Cypher queries on Kuzu graph databases
- / Inspect database schemas and structure
- / Manage database connections with auto-recovery
- / Generate Cypher queries from natural language
- / Handle multi-agent database access
- / Backup and restore databases via web interface
what it does
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.
about
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.
how to install
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.
license
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.
readme
kuzudb-mcp-server
⚠️ 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.
Archive Status
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.
🚀 Key Features
- 📊 Web UI: Built-in database management interface with backup/restore capabilities
- 🔐 Authentication: OAuth and Basic Auth support for secure access
- 🤝 Multi-Agent: Safe concurrent access from multiple AI agents (experimental)
- 🔄 Auto-Recovery: Automatic connection recovery with exponential backoff
- 🐳 Docker Ready: Pre-built images and docker-compose workflow
- 📱 Dual Transport: Both stdio and HTTP transport modes
- 🧠 AI-Powered: Natural language to Cypher query generation
Quick Start
Install and Test
# 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
Development Setup
# 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
One-Line Docker Setup
# 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
Components
Tools
- getSchema - Fetch complete database schema (nodes, relationships, properties)
- query - Execute Cypher queries with automatic error recovery
Prompts
- generateKuzuCypher - Convert natural language to Kuzu-specific Cypher queries
🖥️ Web UI for Database Management
The server includes a powerful web interface that automatically starts with HTTP transport.
Features
- 📁 Database Backup & Restore: Download
.kuzubackups and restore from browser - 📤 Direct File Upload: Upload existing Kuzu database files (main + .wal)
- 📊 Database Info: View path, mode, connection status, and schema statistics
- 🔒 Secure Access: Optional authentication protection
- 👁️ Read-Only Support: Upload/restore disabled in read-only mode
Quick Access
# Start with Web UI (auto-enabled with HTTP)
pnpm serve:test:http
# Access Web UI
open http://localhost:3001/admin
Docker with Web UI
# 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
API Endpoints
/admin- Main web interface/health- Health check endpoint/api/info- Database information (JSON)/api/backup- Download database backup/api/restore- Upload and restore database
🔐 Authentication & Security
The server supports two authentication methods for different use cases:
OAuth (Production Recommended)
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 \
[email protected] \
KUZU_JWT_EXPIRES_IN=31536000 \
node dist/index.js /path/to/database --transport http
Basic Auth (Development/Testing)
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 \
[email protected] \
node dist/index.js /path/to/database --transport http
Web UI Authentication
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
JWT Token Configuration
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
Security Recommendations
- Always use authentication for production deployments
- Use OAuth for external-facing servers
- Use Basic Auth for internal development/testing
- Enable Web UI auth when exposing the interface
- Use HTTPS in production environments
- Configure JWT expiration based on your security requirements
Usage with Claude Desktop
Docker (Recommended)
{
"mcpServers": {
"kuzu": {
"command": "docker",
"args": [
"run", "-v", "/path/to/database:/database",
"--rm", "-i", "ghcr.io/jordanburke/kuzudb-mcp-server:latest"
]
}
}
}
npm/npx
{
"mcpServers": {
"kuzu": {
"command": "npx",
"args": ["kuzudb-mcp-server", "/path/to/database"]
}
}
}
Smithery (Easiest)
# Install via Smithery - includes sample database
smithery install kuzudb-mcp-server
Environment Variables
{
"mcpServers": {
"kuzu": {
"command": "npx",
"args": ["kuzudb-mcp-server"],
"env": {
"KUZU_MCP_DATABASE_PATH": "/path/to/database",
"KUZU_READ_ONLY": "true"
}
}
}
}
🌐 Remote Connection (HTTP Transport)
Pre-built Docker Images
# 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
Local Development
# 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
MCP Inspector Testing
# 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
Remote Client Configuration
{
"mcpServers": {
"kuzu-remote": {
"uri": "http://localhost:3000/mcp",
"transport": "http"
}
}
}
🤝 Multi-Agent Coordination (Experimental)
Enable safe concurrent access from multiple AI agents (e.g., Claude Desktop + Claude Code):
Configuration
{
"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"
}
}
}
}
How It Works
- Read queries: Execute immediately without coordination
- Write queries: Acquire exclusive file-based locks
- Auto cleanup: Stale locks detected and removed
- Clear errors: Lock conflicts return helpful retry messages
Important Notes
- Experimental feature for local development
- Both agents must use the same database path
- Lock files created in database directory
- 10-second default timeout covers most operations
🛠️ Development
Build and Test
# 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
Local Claude Desktop Setup
{
"mcpServers": {
"kuzu": {
"command": "node",
"args": [
"/path/to/kuzudb-mcp-server/dist/index.js",
"/path/to/database"
]
}
}
}
🔧 Environment Variables Reference
| 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_ |
FAQ
- What is the KuzuDB MCP server?
- KuzuDB is a Model Context Protocol (MCP) server profile on explainx.ai. MCP lets AI hosts (e.g. Claude Desktop, Cursor) call tools and resources through a standard interface; this page summarizes categories, install hints, and community ratings.
- How do MCP servers relate to agent skills?
- Skills are reusable instruction packages (often SKILL.md); MCP servers expose live capabilities. Teams frequently combine both—skills for workflows, MCP for APIs and data. See explainx.ai/skills and explainx.ai/mcp-servers for parallel directories.
- How are reviews shown for KuzuDB?
- This profile displays 32 aggregated ratings (sample rows for discoverability plus signed-in user reviews). Average score is about 4.5 out of 5—verify behavior in your own environment before production use.
Use Cases▌
Direct Database Queries from AI
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
Data Analysis & Reporting
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
Schema Exploration
Understand database structure, relationships, and data models
Example
'Explain the user_orders table schema and its relationships'
Onboard engineers faster, explore unfamiliar databases efficiently
Data Validation & Quality Checks
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
Implementation Guide▌
Prerequisites
- ›Claude Desktop 0.7.0+ or Cursor with MCP support
- ›Database credentials (read-only recommended for safety)
- ›Network access from Claude client to database
- ›Understanding of database security and access control
Time Estimate
15-30 minutes including configuration and testing
Installation Steps
- 1.Install MCP server: npm install -g @modelcontextprotocol/server-[name]
- 2.Configure database connection in Claude Desktop config (~/.claude/mcp.json)
- 3.Provide connection string: host, port, database, username, password
- 4.Restart Claude Desktop to load MCP server
- 5.Test connection: 'List all tables in database'
- 6.Run simple query: 'Show me 5 rows from users table'
- 7.Verify results and permissions are correct
- 8.Document query patterns for team use
Troubleshooting
- ⚠Connection refused: Check database is running and network accessible
- ⚠Authentication failed: Verify credentials, check user permissions
- ⚠Claude can't see tables: Grant appropriate read permissions to database user
- ⚠Slow queries: Add indexes, limit result set size, use read replicas
- ⚠MCP server not loading: Check config syntax, restart Claude Desktop
Best Practices▌
✓ Do
- +Use read-only database credentials to prevent accidental writes
- +Connect to read replica, not production primary database
- +Set query timeout limits to prevent long-running queries
- +Document database schema and common queries for AI context
- +Monitor query performance and optimize slow queries
- +Use connection pooling for better performance
- +Test with non-production data first
✗ Don't
- −Don't use production write credentials—risk of data corruption
- −Don't query production database during peak traffic hours
- −Don't expose sensitive PII without proper access controls
- −Don't skip query result validation—AI can misinterpret schema
- −Don't allow unlimited result set sizes—set LIMIT clauses
- −Don't share database credentials in plain text config files
💡 Pro Tips
- ★Create database views for common queries to simplify AI access
- ★Add schema comments/descriptions so AI understands column meanings
- ★Use semantic table/column names ('customer_lifetime_value' not 'clv')
- ★Set up query logging to audit what Claude is querying
- ★Create saved query templates for recurring analysis
- ★Combine with data visualization tools for better insights
Technical Details▌
Architecture
MCP server acts as bridge between Claude and database, translating natural language to SQL queries and returning results in structured format.
Protocols
- Model Context Protocol (MCP)
- Database-specific protocols (PostgreSQL, MySQL, MongoDB)
Compatibility
- PostgreSQL
- MySQL
- SQLite
- MongoDB
- Redis
When to Use This▌
✓ 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.
Integration▌
- →Read replica connection for analytics queries
- →Database view layer to abstract complex joins
- →Query result caching for repeated questions
- →Audit logging of all AI-generated queries
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
List & Promote Your MCP Server
Share your MCP server with the developer community
Ratings
4.5★★★★★32 reviews- ★★★★★Chaitanya Patil· Dec 8, 2024
We wired KuzuDB into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
- ★★★★★Nikhil Jain· Dec 4, 2024
KuzuDB is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
- ★★★★★Piyush G· Nov 27, 2024
KuzuDB is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
- ★★★★★Sakura Sethi· Nov 23, 2024
According to our notes, KuzuDB benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
- ★★★★★Sakura Dixit· Nov 3, 2024
KuzuDB has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
- ★★★★★Dev Taylor· Oct 22, 2024
Strong directory entry: KuzuDB surfaces stars and publisher context so we could sanity-check maintenance before adopting.
- ★★★★★Shikha Mishra· Oct 18, 2024
KuzuDB is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
- ★★★★★Mei Reddy· Oct 14, 2024
We wired KuzuDB into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
- ★★★★★Yash Thakker· Sep 25, 2024
We evaluated KuzuDB against two servers with overlapping tools; this profile had the clearer scope statement.
- ★★★★★Neel Kim· Sep 9, 2024
KuzuDB is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
showing 1-10 of 32