kuzu-mcp-server

kuzu-mcp-server

By kuzudb GitHub

A Model Context Protocol server that provides access to Kuzu databases

Overview

what is kuzu-mcp-server?

The kuzu-mcp-server is a Model Context Protocol server that provides access to Kuzu databases, enabling large language models (LLMs) to inspect database schemas and execute queries on the provided Kuzu database.

how to use kuzu-mcp-server?

To use kuzu-mcp-server, you can set it up using Docker or Node.js. For Docker, configure the config.json file with the appropriate command and arguments. For Node.js, install dependencies and edit the configuration similarly.

key features of kuzu-mcp-server?

  • Fetches the full schema of the Kuzu database, including nodes and relationships.
  • Executes Cypher queries on the Kuzu database.
  • Generates Cypher queries from natural language questions.

use cases of kuzu-mcp-server?

  1. Inspecting database schemas for better understanding of data structure.
  2. Running complex queries on Kuzu databases for data analysis.
  3. Generating queries based on user questions to simplify database interactions.

FAQ from kuzu-mcp-server?

  • What is the primary function of kuzu-mcp-server?

It provides a way to access and interact with Kuzu databases through a Model Context Protocol.

  • Is it necessary to use Docker?

No, you can also use Node.js for development purposes.

  • What programming language is kuzu-mcp-server written in?

It is written in JavaScript.

Content

kuzu-mcp-server

A Model Context Protocol server that provides access to Kuzu databases. This server enables LLMs to inspect database schemas and execute queries on provided kuzu database.

Components

Tools

  • getSchema

    • Fetch the full schema of the Kuzu database, including all nodes and relationships tables and their properties
    • Input: None
  • query

    • Run a Cypher query on the Kuzu database
    • Input: cypher (string): The Cypher query to run

Prompt

  • generateKuzuCypher
    • Generate a Cypher query for Kuzu
    • Argument: question (string): The question in natural language to generate the Cypher query for

Usage with Claude Desktop

  • Edit the configuration file config.json:
    • on macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • on Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Add the following configuration to the mcpServers object:
    {
      "mcpServers": {
          "kuzu": {
              "command": "docker",
              "args": [
                  "run",
                  "-v",
                  "{Absolute Path to the Kuzu database}:/database",
                  "--rm",
                  "-i",
                  "kuzudb/mcp-server"
              ]
          }
      }
    }
    
    Change the {Absolute Path to the Kuzu database} to the actual path
  • Restart Claude Desktop

With Node.js and npm (for Development)

  • Install dependencies: npm install
  • Edit the configuration file config.json:
    • on macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • on Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Add the following configuration to the mcpServers object:
    {
      "mcpServers": {
          "kuzu": {
              "command": "node",
              "args": [
                  "{Absolute Path to this repository}/index.js",
                  "{Absolute Path to the Kuzu database}",
              ]
          }
      }
    }
    
    Change the {Absolute Path to this repository} and {Absolute Path to the Kuzu database} to the actual paths
  • Restart Claude Desktop

Read-Only Mode

The server can be run in read-only mode by setting the KUZU_READ_ONLY environment variable to true. In this mode, running any query that attempts to modify the database will result in an error. This flag can be set in the configuration file as follows:

{
    "mcpServers": {
        "kuzu": {
            "command": "docker",
            "args": [
                "run",
                "-v",
                "{Absolute Path to the Kuzu database}:/database",
                "-e",
                "KUZU_READ_ONLY=true",
                "--rm",
                "-i",
                "kuzudb/mcp-server"
            ],
        }
    }
}
No tools information available.
No content found.