Server Noonien logo

Server Noonien

Local-first MCP knowledge graph with peer-to-peer sync, conflict-free shards, and tools for managing entities, relations, and observations.

Install Server Noonien

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "server-noonien": {
      "command": "npx",
      "args": [
        "-y",
        "server-noonien"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Automated check passed— started and listed 14 tools correctly (Today).

Overview

server-noonien provides a shared knowledge-graph memory layer for AI agents through MCP. It stores each node's changes in an append-only shard and merges shards using a CRDT, allowing replicas to converge without a central server or database. The MCP process runs over stdio, while the optional nooniend daemon synchronizes shards directly across machines over a LAN or VPN. Reach for it when agents need durable, structured memory across machines, including during offline operation.

Use cases

  • Store structured facts about users, projects, and tasks
  • Synchronize agent memory across LAN-connected machines
  • Search observations and entity metadata from an MCP client
  • Merge knowledge-graph entities after duplicate detection
  • Inspect concurrent writes and their authors

Key features

  • Knowledge graph with entities, relations, and observations
  • CRDT-based shard merging
  • Peer-to-peer replication with no central server
  • Offline-first local replicas
  • Entity, relation, and observation update operations
  • Conflict inspection with author information

Tools14

What Server Noonien lets your agent do. Expand a tool for its parameters.

Verified live~1.9k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

6/6 checks healthy over the last 20d

What it can do

From the 14 tools this server returned when we ran it; 14 declare their own safety hints.

Can delete or modify data · 7Read-only tools · 7
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceSigned build
Package age25 days
Maintainers1

Observed 2026-11-03 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 15d ago via OSV.dev · server-noonien (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2Stargazers on the source repository.
npm downloads1.4kPackage downloads in the last 30 days.
Last commit5d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed14Callable tools this server registers over MCP.

How Server Noonien works

What server-noonien does

server-noonien exposes a knowledge graph over the Model Context Protocol, using entities, typed relations, and observations as its core data model. It is designed as a drop-in replacement for the official MCP memory server, preserving its main memory tools while adding operations for updates, entity merges, and conflict inspection.

Unlike a single shared JSONL file, each node writes to its own append-only shard. The graph uses an LWW-Element-Set CRDT ordered by hybrid logical clock, node identifier, and sequence number. Shard merges are idempotent, commutative, associative, and convergent, so replicas that receive the same operations reach the same graph regardless of delivery order.

How it works

The MCP command is short-lived and is normally spawned by an MCP client over stdio. It reads and writes a complete local replica, allowing the agent to continue working when disconnected. When connectivity returns, replicas can reconverge.

For direct machine-to-machine replication, run the long-lived nooniend daemon on each machine. It exchanges shards directly over reachable IP addresses, such as through a LAN or VPN, without requiring a shared folder, hosted service, or central server. The package also supports file and s3 sharing backends when a shared folder or S3-compatible object store is preferred.

Setup and configuration

The package requires Node.js 22 or newer. Install it globally with:

Terminal
npm install -g server-noonien

An MCP client can launch the server with:

Terminal
npx -y server-noonien

The command uses stdio and is intended to be registered in the client's MCP configuration. Claude Code can register it as a server named memory with claude mcp add memory -- npx -y server-noonien. A local storage directory can be set with NOONIEN_DIR, as shown in the OpenCode configuration example. Set NOONIEN_BACKEND when selecting a backend such as s3; the S3 SDK is an optional dependency loaded for that backend.

The same package also provides the one-shot noonien maintenance CLI and the long-running nooniend replication daemon. With a global install, both commands are available on PATH; npx -p server-noonien noonien help and npx -p server-noonien nooniend can run them without a global install.

Tools and capabilities

The graph-management tools include:

  • create_entities, update_entities, and merge_entities for creating, renaming, changing types, and combining entities.
  • create_relations, update_relations, and delete_relations for managing directed, typed connections.
  • add_observations, update_observations, and delete_observations for maintaining entity observations.
  • delete_entities for removing entities and their associated relations.
  • read_graph for retrieving the full graph.
  • search_nodes for matching names, entity types, and observation content.
  • open_nodes for retrieving named nodes.
  • read_conflicts for listing elements written by more than one node and identifying their authors.

Limitations and notes

Peer-to-peer synchronization requires IP reachability between participating machines, typically over a LAN or VPN. The file and s3 backends instead require a shared folder or object store accessible to every node. The MCP server itself is a stdio process; replication is handled separately by nooniend. The project is licensed under MPL-2.0.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Server Noonien

server-noonien is an MCP server that connects AI agents to a replicated knowledge graph stored in local shards. Its main tools create, search, read, update, merge, and delete entities, relations, and observations, while read_conflicts identifies elements written by multiple nodes. Peer-to-peer synchronization is provided by the separate nooniend daemon.

Install it with `npm install -g server-noonien`, then configure your MCP client to run `npx -y server-noonien` over stdio. Node.js 22 or newer is required. The package also supports running the command without a global install through npx.

Run the `nooniend` replication daemon on each machine and provide IP reachability over a LAN or VPN. The daemon exchanges per-node shards directly, so no shared folder or central service is required. Alternatively, use the `file` or `s3` backend with storage reachable by every node.

Yes, server-noonien keeps a full local replica and can read and write while a machine is offline. Replicas reconverge when network connectivity returns and the shards can be exchanged.

Set `NOONIEN_DIR` to choose the local storage directory and `NOONIEN_BACKEND` when selecting a backend such as `s3`. The default stdio server can run locally without additional configuration; shared `file` and `s3` setups require storage accessible to each node.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewServer Noonien AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/server-noonien?style=directory)](https://allmcps.com/mcp/server-noonien)
HTML Embed
<a href="https://allmcps.com/mcp/server-noonien"><img src="https://allmcps.com/api/badge/server-noonien?style=directory" alt="Server Noonien on AllMCPs" /></a>