Atlas / MCP servers / izumisy / DuckDB Knowledge Graph Memory

DuckDB Knowledge Graph MemorySAFE

mcp/izumisy/duckdb-knowledge-graph-memory

MCP Memory Server with DuckDB backend

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
8 2r · 3w · 3d
Transport
stdio
License
MIT
Stars
59
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://github.com/izumisy/mcp-duckdb-memory-server/actions/workflows/test.yaml) [](https://smithery.ai/server/@IzumiSy/mcp-duckdb-memory-server)

A forked version of the official Knowledge Graph Memory Server.

Installation

Installing via Smithery

To install DuckDB Knowledge Graph Memory Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @IzumiSy/mcp-duckdb-memory-server --client claude

Manual install

Otherwise, add @IzumiSy/mcp-duckdb-memory-server in your claude_desktop_config.json manually (MEMORY_FILE_PATH is optional)

{
"mcpServers": {
"graph-memory": {
"command": "npx",
"args": [
"-y",
"@izumisy/mcp-duckdb-memory-server"
],
"env": {
"MEMORY_FILE_PATH": "/path/to/your/memory.data"
}
}
}
}

The data stored on that path is a DuckDB database file.

Docker

Build

docker build -t mcp-duckdb-graph-memory .

Run

docker run -dit mcp-duckdb-graph-memory

Usage

Use the example instruction below

Follow these steps for each interaction:

1. User Identification:
- You should assume that you are interacting with default_user
- If you have not identified default_user,
Read from source at commit cce315cadb8cOBSERVED · 2026-10-08
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add mcp-duckdb-memory-server -- npx -y @izumisy/[email protected]
claude-desktop
{
  "mcpServers": {
    "mcp-duckdb-memory-server": {
      "command": "npx",
      "args": [
        "-y",
        "@izumisy/[email protected]"
      ]
    }
  }
}
03

Exposed tools (8)

2 read · 3 write · 3 destructive. Blast radius: 3 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
add_observationswriteAdd new observations to existing entities in the knowledge graph
create_entitieswriteCreate multiple new entities in the knowledge graph
create_relationswriteCreate multiple new relations between entities in the knowledge graph. Relations should be in active voice
delete_entitiesdestructiveDelete multiple entities and their associated relations from the knowledge graph
delete_observationsdestructiveDelete specific observations from entities in the knowledge graph
delete_relationsdestructiveDelete multiple relations from the knowledge graph
open_nodesreadOpen specific nodes in the knowledge graph by their names
search_nodesreadSearch for nodes in the knowledge graph based on a query
04

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (1 observation(s))
Network
none-observed
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (3)

MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
delete_entities, delete_observations, delete_relations
Why it matters. 3 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@modelcontextprotocol/sdk, fuse.js, zod, @cfworker/json-schema, @changesets/cli, @swc/core, @types/node, prettier
Why it matters. 12 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWPrompt injection · review.instruction_override · CWE-94, CWE-1427
README.md
Always begin your chat by saying only "Remembering..." and search relevant information from your knowledge graph
Why it matters. The README embeds behavioral directives that instruct the AI agent to override its normal conversational flow by always opening with a fixed phrase and proactively collecting personal details.
Fix. rewrite it so the instruction says plainly what it does, and asks the user before it acts

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha cce315cadb8cfull audit observations/trust-audit/mcp-server/izumisy__duckdb-knowledge-graph-memory.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-08cce315cadb8cSAFEB89first audit
06

Questions

What is the DuckDB Knowledge Graph Memory MCP server?

MCP Memory Server with DuckDB backend

What tools does DuckDB Knowledge Graph Memory expose?

8 in total: 2 read-only, 3 that write, and 3 that can delete or overwrite (delete_entities, delete_observations, delete_relations). Every one is listed on this page with its risk.

Is DuckDB Knowledge Graph Memory safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B. Separately from the audit: 3 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does DuckDB Knowledge Graph Memory need?

No credential environment variables were found in its source, so it appears to need none.

How does DuckDB Knowledge Graph Memory run?

It speaks stdio, so it runs as a local process your client starts. It is published on npm as @izumisy/mcp-duckdb-memory-server at 1.1.10.

How current is this page?

The grade is for one exact copy of the source (cce315cadb8c), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement