getSchemaLABSCO SUMMARY
Schema first, then Cypher — and a read-only switch that is enforced by the server.
getSchema exists so the model can see the node and relationship tables before it writes a traversal, which is where most generated Cypher goes wrong. KUZU_READ_ONLY is the setting to reach for when you want exploration without risk: modifying queries return an error rather than running.
What it is
Kuzu's own MCP server: two tools over one database file, plus a prompt that helps write the Cypher.
What you get
- getSchema returns the full schema — every node and relationship table with its properties — and takes no input
- query runs a Cypher statement against the database
- A generateKuzuCypher prompt that turns a natural-language question into a Kuzu Cypher query
- KUZU_READ_ONLY set to true makes any modifying query fail, rather than relying on the model to behave
Requirements
A Kuzu database file on disk. The recommended path is Docker: mount the directory holding the database and set KUZU_DB_FILE to the file name. Running from the clone with Node.js works too — pass the absolute path to the database as an argument. No account, no key.
Setup effort
One command — docker run -v <YOUR_PATH_TO_DIRECTORY_CONTAINING_KUZU_DATABASE>:/database -e KUZU_DB_FILE=<YOUR_KUZU_DB_FILE> --rm -i kuzudb/mcp-server
USE CASES
Getting oriented in a graph you did not build
Pull the full schema — node tables, relationship tables and their properties — before asking anything.
Asking a graph question without writing Cypher
Use the prompt to turn the question into a Kuzu query, then run it.
Letting someone explore without risking the data
Start the server with KUZU_READ_ONLY set; write queries fail at the server.
Checking a traversal before you put it in code
Run the Cypher against the real database and read the rows back in the thread.
2 tools
Listed in project docs. Your client may show a different list.
queryBEFORE YOU INSTALL
What to know first
Tools you get
2 tools named in the project's documentation.
Requires
- docker on PATH (Docker route)
- Node.js and npm (Node route)
INSTALLATION
Connect your client
Server setup
docker run -v <YOUR_PATH_TO_DIRECTORY_CONTAINING_KUZU_DATABASE>:/database -e KUZU_DB_FILE=<YOUR_KUZU_DB_FILE> --rm -i kuzudb/mcp-serverMCP Clients
Claude Desktop — Docker
{
"mcpServers": {
"kuzu": {
"command": "docker",
"args": [
"run",
"-v",
"<YOUR_PATH_TO_DIRECTORY_CONTAINING_KUZU_DATABASE>:/database",
"-e",
"KUZU_DB_FILE=<YOUR_KUZU_DB_FILE>",
"--rm",
"-i",
"kuzudb/mcp-server"
]
}
}
}Add "-e", "KUZU_READ_ONLY=true" to the args to make modifying queries fail.
Claude Desktop — Node
git clone https://github.com/kuzudb/kuzu-mcp-server.git
cd kuzu-mcp-server
npm installAdd this to your claude_desktop_config.json:
{
"mcpServers": {
"kuzu": {
"command": "node",
"args": [
"<YOUR_PATH_TO_REPOSITORY>/index.js",
"<YOUR_PATH_TO_KUZU_DATABASE>"
]
}
}
}