com.learningnodes/elen·Databases

elen

Records coding-agent decisions with their limits and marks old ones superseded. Local SQLite.

Stars
4
Version
0.3.1
License
AGPL-3.0
Review
Passed
Language
TypeScript
Last commit
3h ago
Forks
0
Open issues
0
Registry update
Oct 14, 2026
agentsdecision-makingdecision-treedecisionopsllmmemory

Connect

npm
Terminal
$claude mcp add elen \  -- npx -y @learningnodes/[email protected]

Environment variables

Nothing to configure — it works as is.

Security review

Review passed

Reviewed 1h ago.

metadata
scanned
packages
1 checked

No findings.

Tools

This server runs on your machine, so its tool list is not fetched before install — the README below describes what it offers.

Elen is an open-source MCP server that records the decisions your coding agent makes, with the limits that bound them, and marks old decisions as superseded. It installs with one npx line, works with Cursor, Claude Code and any MCP client, and keeps decisions in a local SQLite file.

Install

npx -y @learningnodes/[email protected]

Claude Code

claude mcp add --transport stdio elen -- npx -y @learningnodes/[email protected]

VS Code

Open this link to install:

vscode:mcp/install?%7B%22name%22%3A%22elen%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40learningnodes%2Felen-mcp%400.3.1%22%5D%7D

Cursor

Add this to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "elen": {
      "command": "npx",
      "args": ["-y", "@learningnodes/[email protected]"]
    }
  }
}

Gemini CLI

Add this to settings.json (~/.gemini/settings.json, or .gemini/settings.json in your project):

{
  "mcpServers": {
    "elen": {
      "command": "npx",
      "args": ["-y", "@learningnodes/[email protected]"]
    }
  }
}

Any other MCP client

Use the same mcpServers entry:

{
  "mcpServers": {
    "elen": {
      "command": "npx",
      "args": ["-y", "@learningnodes/[email protected]"]
    }
  }
}

Tested with

ClientStatus
Claude CodeRun by the maintainer
CursorConfiguration follows the client's documentation. Not yet recorded as tested.
VS CodeConfiguration follows the client's documentation. Not yet recorded as tested.
Gemini CLIConfiguration follows the client's documentation. Not yet recorded as tested.
Other MCP clientsConfiguration follows the client's documentation. Not yet recorded as tested.

Make your agent use it

The tools alone give an agent no habit: it sees what each tool does, but it does not stop mid-task to ask whether a precedent exists. Add the block below to your rules file or system prompt so that searching before a decision and committing after one become part of every session.

# Epistemic Decision Memory Protocol

You must adhere to the Minimal Token Protocol for decisions:

1. Pointer-First Retrieval: Before making a technical decision, ALWAYS use elen_suggest to retrieve Top-K minimal pointers.
2. On-Demand Expansion: If a pointer looks relevant, you MUST call elen_expand on that specific ID. Do not hallucinate constraints.
3. Commiting Atoms: When deciding, use elen_commit. Summarize constraints into plain-text arrays (e.g. "budget < 500ms").
4. Graph Revision: If a decision invalidates a precedent, you MUST use elen_supersede to advance the graph state.

What it stores

In local mode decisions stay in a SQLite file on your machine (default ~/.elen/decisions.db). Connected mode is optional, needs elen login and an API key, and is in beta.

Tools

ToolWhat it does
elen_commitCommits a new decision to the graph, with its constraints as a plain-text list.
elen_get_competencyShows the competency profile for this agent, built from its validated decision history.
elen_consolidateSuggests clusters and duplicate or stale candidates without changing the graph.
elen_get_contextGives an overview of active decision threads grouped by domain, for the start of a session.
elen_expandExpands a decision ID into its full constraints and text.
elen_incomingLists decisions other people have shared into your workspace. Connected mode, beta.
elen_log_decisionCreates a validated Decision Record from constraints, evidence and an answer.
elen_search_precedentsSearches validated decisions for precedents.
elen_statusReturns the agent, project, database path and counts, to check the namespace before committing.
elen_suggestRetrieves short pointers to prior decisions before you make a new one.
elen_supersedeRevises an older decision and marks it superseded by a new one.
elen_team_searchSearches team and human decisions visible to your workspace for a topic. Connected mode, beta.

Links

Elen is the open-source part of Learning Nodes, the DecisionOps workspace. For the business decisions behind the code: https://workstation.learningnodes.com?utm_source=elen-readme&utm_medium=referral&utm_campaign=npm-page

From the server's repository — third-party content, read it before running anything it suggests.

More in Databases

Listing from the official MCP Registry · repository facts from GitHub, 1h ago.