nemonicon-cli
v0.17.0
Published
CLI tool for Nemonicon knowledge management
Readme
nemonicon-cli
Terminal-first companion (and Model Context Protocol server) for Nemonicon — a modern mnemonic platform that helps you master the Method of Loci with AI-powered memory palaces, knowledge outlines, PAO/Major-System encoders, and spaced-repetition recall.
nemonicon-cli lets you read and write your Nemonicon data from the terminal, from scripts, or directly from any MCP-compatible AI assistant (Claude Desktop, Claude Code, Cursor, etc.).
$ nemonicon
nemonicon v0.17.0
A CLI for the Nemonicon knowledge & memory-palace platform.
USAGE
$ nemonicon <command> [options]
QUICK START
$ nemonicon login Sign in via your browser
$ nemonicon list List your knowledge topics
$ nemonicon palaces List your memory palaces
$ nemonicon tui Launch the interactive terminal UI
$ nemonicon mcp Run as a Model Context Protocol server
...Install
npm install -g nemonicon-cliRequires Node.js 18 or newer. The binary is exposed as nemonicon:
nemonicon --help
nemonicon --versionTo upgrade to the latest version later:
nemonicon upgrade
# or
npm install -g nemonicon-cli@latestSign in
Pick whichever flow fits your workflow.
Browser login (OAuth 2.1 + PKCE) — recommended
nemonicon loginOpens your browser, walks you through a Nemonicon consent screen, and stores a refresh token in ~/.nemonicon/config.json. Access tokens are refreshed automatically.
Personal token
Generate a token at https://app.nemonicon.com/settings/cli, then run:
nemonicon auth mp_xxxxxxxxxxxxxxxxxxxxxxxxTo sign out:
nemonicon logoutTo point the CLI at a self-hosted or preview deployment, pass --api-url <url> (and --protection-bypass <secret> if it's behind Vercel Deployment Protection).
Usage at a glance
The CLI ships ~50 commands, organized into logical groups. Run nemonicon --help for the full color-coded listing, or nemonicon <command> --help for any individual command's flags.
Account
| Command | Description |
| --- | --- |
| nemonicon login | Sign in via browser (OAuth 2.1 + PKCE). |
| nemonicon auth <token> | Authenticate with a personal API token. |
| nemonicon logout | Remove saved credentials. |
Knowledge — topics & outline items
| Command | Description |
| --- | --- |
| nemonicon list | List all knowledge topics owned by the signed-in user. |
| nemonicon show <topicId> | Print a topic and its full outline as Markdown. |
| nemonicon outline <topicId> | Print just the outline tree for a topic. |
| nemonicon create <file.md> | Create a topic from a Markdown file (frontmatter for metadata, bullet list for items). |
| nemonicon append <topicId> <file.md> | Append Markdown bullets to a topic (use --parent <itemId> for nesting). |
| nemonicon update-topic <topicId> | Update topic metadata (title, description, icon, color, tags, archived). |
| nemonicon delete-topic <topicId> | Permanently delete a topic and all of its outline items. |
| nemonicon update <itemId> | Update a single outline item. |
| nemonicon delete <itemId> | Delete an outline item. |
| nemonicon move <itemId> | Move an outline item to a new parent or sort order. |
| nemonicon bulk-update <topicId> <file.json> | Apply a batched JSON patch across many items in one call. |
Memory palaces, loci, zones, floors
| Command | Description |
| --- | --- |
| nemonicon palaces | List all memory palaces (add --archived to include archived ones). |
| nemonicon palace <palaceId> | Show a palace and all of its loci and zones (--json for raw JSON). |
| nemonicon create-palace <title> | Create a new (empty) memory palace. |
| nemonicon update-palace <palaceId> | Rename a palace, archive it (--archive), or restore it (--restore). |
| nemonicon delete-palace <palaceId> | Archive a palace (soft delete; restorable via update-palace --restore). |
| nemonicon create-locus <palaceId> <title> | Create a locus. Position with --x / --y; optional --emoji, --zone, --floor. |
| nemonicon update-locus <locusId> | Edit title, position, emoji, journey order, zone, or floor. |
| nemonicon delete-locus <locusId> | Permanently delete a locus and any memories on it. |
| nemonicon create-zone <palaceId> <name> | Create a rectangular zone (room). Requires --x / --y / --width / --height. |
| nemonicon update-zone <zoneId> | Edit a zone's name, position, size, color, or sort order. |
| nemonicon delete-zone <zoneId> | Delete a zone. Loci inside it are unassigned but kept. |
| nemonicon floors <palaceId> | List the floors of a palace. |
| nemonicon create-floor <palaceId> <name> | Add a new floor. |
| nemonicon update-floor <floorId> | Rename or reorder a floor. |
| nemonicon delete-floor <floorId> | Delete a floor (loci/zones on it are removed too; a palace must keep at least one floor). |
Linking palaces to topics
Topics can be backed by one or more memory palaces. Outline items are then auto-mapped 1:1 to loci in DFS order, walking the palace pool. You can also pin a specific palace to a specific subtopic so that branch always uses that palace regardless of pool order.
| Command | Description |
| --- | --- |
| nemonicon topic-palaces <topicId> | Show the topic's palace pool and any per-subtopic pins. |
| nemonicon set-topic-palaces <topicId> [palaceIds...] | Replace the ordered palace pool. Pass no ids to clear. |
| nemonicon pin-subtopic-palace <topicId> --item <id\|root> --palace <id> | Pin a palace to a sibling group. Pass --clear to remove. |
Mnemonic encoders
| Command | Description |
| --- | --- |
| nemonicon pao / get-pao / create-pao / update-pao / delete-pao | Manage your PAO (Person/Action/Object) entries. |
| nemonicon major / get-major / create-major / update-major / delete-major | Manage Major System entries (0–99 → mnemonic word). |
| nemonicon encoders / encoder / create-encoder / update-encoder / delete-encoder | Manage user-defined encoders (Dominic, peg system, shape system, …). |
| nemonicon encoder-entries / encoder-entry / create-encoder-entry / update-encoder-entry / delete-encoder-entry | Manage entries within a custom encoder. |
Tools
| Command | Description |
| --- | --- |
| nemonicon tui | Launch the interactive terminal UI (Ink-based, vim-style modal editor). |
| nemonicon mcp | Start a Model Context Protocol stdio server (see MCP server). |
| nemonicon upgrade | Self-update to the latest published version. |
Tip:
nemonicon --helpprints all commands grouped by category in color. Append--helpto any command for its full flag reference.
Markdown format
create and append accept Markdown files where each bullet becomes one outline item and indentation defines hierarchy:
---
title: Greek Gods
description: The twelve Olympians
---
- Zeus
- King of the gods
- Wields lightning bolts
- Poseidon
- God of the sea
- Hades
- Ruler of the underworldshow and outline round-trip the same format, so you can pipe a topic out, edit it locally, and pipe it back in:
nemonicon show <topicId> > greek-gods.md
# edit…
nemonicon append <topicId> greek-gods.mdMCP server
nemonicon mcp runs a Model Context Protocol server over stdio, exposing your Nemonicon knowledge and palaces as tools any MCP client can call.
Add this entry to your client's MCP config (e.g. claude_desktop_config.json):
{
"mcpServers": {
"nemonicon": {
"command": "nemonicon",
"args": ["mcp"]
}
}
}It reuses the credentials saved by nemonicon login / nemonicon auth, so make sure you've signed in first.
Tools exposed
Topics & outline items — list_topics, get_topic, get_outline, create_topic, update_topic, delete_topic, append_to_topic, update_item, bulk_update_items, delete_item
Memory palaces, loci, zones, floors — list_palaces, get_palace, create_palace, update_palace, delete_palace, create_locus, update_locus, delete_locus, create_zone, update_zone, delete_zone, list_floors, create_floor, update_floor, delete_floor
Topic ↔ palace linking — get_topic_palaces, set_topic_palaces, pin_subtopic_palace
Encoders — list_pao, get_pao, create_pao, update_pao, delete_pao, list_major, get_major, create_major, update_major, delete_major, list_encoders, get_encoder, create_encoder, update_encoder, delete_encoder, list_encoder_entries, get_encoder_entry, create_encoder_entry, update_encoder_entry, delete_encoder_entry
No-install option: Nemonicon also exposes a hosted MCP endpoint at
https://app.nemonicon.com/api/mcpwith full OAuth 2.1 support. You can add it as a Custom Connector in Claude Desktop / mobile without installing this package locally.
Configuration
Credentials and settings live in ~/.nemonicon/config.json. You can edit this file directly if you need to (e.g. to switch API URLs).
Environment variables override the config file when set:
| Variable | Purpose |
| --- | --- |
| NEMONICON_CLI_TOKEN | Bearer token to use instead of the saved one. |
| NEMONICON_API_URL | Override the API base URL. |
| NO_COLOR | Disable ANSI colors in CLI output. |
| FORCE_COLOR | Force ANSI colors (e.g. when piping into less -R). |
Links
- Web app — https://app.nemonicon.com
- npm package — https://www.npmjs.com/package/nemonicon-cli
- Issues — https://github.com/nemonicon/mempal-next/issues
License
MIT
