add_npc
To add new NPC nodes.
Give an AI a memory of your world — characters, places, artifacts — that stays consistent between sessions.
LABSCO SUMMARY
That inversion is what keeps the graph coherent: a required field with a relationship means the AI creates both the node and its edge every time, and an enum means it picks from your list rather than inventing a race. Worth knowing before you build on it: conflicting information is last-write-wins, so track sources in metadata or split disputed facts into separate nodes.
A local knowledge graph server aimed at text-based RPGs and interactive storytelling, where the tools an AI gets are generated from schemas you write.
Node.js 18 or higher and npm. Clone, npm install, npm run build, then point your client at dist/index.js. Schema files ending in .schema.json go in dist/data/schemas and are picked up at startup; a schema's name must start with add_ to be recognised. Data lives in dist/data/memory.json, and MEMORY_FILE and SCHEMAS_DIR can move both.
Build from source — git clone https://github.com/CheMiguel23/memorymesh.git
USE CASES
Store characters, locations and items as typed nodes so last week's details survive into this week's session.
Declare a required property with a relationship, and the edge gets created with the node every time.
Write your own schemas — a social network, an org chart — and get the matching tools generated.
Open the graph in the Memory Viewer and inspect nodes, edges and the raw JSON.
Listed in project docs. Your client may show a different list.
add_npcTo add new NPC nodes.
update_npcTo modify existing NPC nodes.
delete_npcTo remove NPC nodes.
add_locationupdate_locationdelete_locationBEFORE YOU INSTALL
The documented client runs the server on your machine.
INSTALLATION
git clone https://github.com/CheMiguel23/memorymesh.git
cd memorymesh
npm install
npm run build{
"mcpServers": {
"memorymesh": {
"command": "node",
"args": [
"<YOUR_PATH_TO_PROJECT>/memorymesh/dist/index.js"
]
}
}
}<YOUR_PATH_TO_PROJECT>/ is the full path of the folder that holds your memorymesh clone, so the path ends in memorymesh/dist/index.js (on Windows, for example C:\\Projects\\memorymesh\\dist\\index.js). Restart Claude Desktop completely afterwards.