github re-analysis due

AdelElo13/neuromcp

github

Semantic memory for AI agents — local-first MCP server with hybrid search, governance, and consolidation

maintainer
AdelElo13
license
NOASSERTION
first seen
2026-06-03
last seen
2026-06-15
releases · 30d
1
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 0 tools
transport stdio · streamable-http · http verified reported listed in the official MCP registry counts 0 tools · 0 res · 0 prompts permission surface via code analysis

no tools enumerated yet for this server.

skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 7596c77 · analyzer v17 · 3d ago

skills & prompt files 1

code evidence vv0.25.1 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

filesystem 32

  • fs AdelElo13-neuromcp-7596c77/bin/doctor.mjs :15 import { readFileSync, writeFileSync, existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/embed.mjs :20 import { existsSync, readFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/enable-consolidation.mjs :22 import { existsSync, mkdirSync, copyFileSync, chmodSync, readFileSync, writeFileSync, unlinkSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/enable-daemon.mjs :32 import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync, chmodSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/enable-zombie-cleanup.mjs :33 import { existsSync, mkdirSync, copyFileSync, chmodSync, readFileSync, writeFileSync, unlinkSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/init-wiki.mjs :19 import { existsSync, mkdirSync, copyFileSync, readFileSync, writeFileSync, renameSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/query.mjs :21 import { existsSync, readFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/bin/resolve-node-bin.mjs :28 import { accessSync, constants } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/eval/benchmark.ts :1 import { readFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/eval/longmemeval-distractor-runner.ts :18 import { readFileSync, writeFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/eval/longmemeval-runner.ts :13 import { readFileSync, writeFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/eval/runner.ts :9 import { readdirSync, readFileSync, writeFileSync, existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/ab-sweep.mjs :24 import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/backfill-embeddings.mjs :19 import { existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/backfill-verbatim.mjs :17 import { readFileSync, readdirSync, existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/download-model.mjs :1 import { mkdirSync, existsSync, createWriteStream } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/download-model.ts :1 import { mkdirSync, existsSync, createWriteStream } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/index-wiki.mjs :21 import { readdirSync, readFileSync, statSync, existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/scripts/usefulness-dashboard.mjs :24 import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/embeddings/onnx.ts :2 import { existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/episode/active-state.ts :1 import { existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/storage/database.ts :1 import { mkdirSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/storage/migrations.ts :1 import { copyFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/tools/stats.ts :1 import { statSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/tools/wiki.ts :1 import { readFileSync, readdirSync, statSync, writeFileSync, existsSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/transport/http.ts :2 import { readFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/src/version.ts :1 import { readFileSync } from 'node:fs';
  • fs AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-auto-capture.js :17 const fs = require('fs');
  • fs AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-auto-retrieve.cjs :17 const fs = require('node:fs');
  • fs AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-context-inject.js :13 const fs = require('fs');
  • fs AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-critic.cjs :27 const fs = require('node:fs');
  • fs AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-persist.cjs :14 const fs = require("fs");

shell / exec 10

  • shell AdelElo13-neuromcp-7596c77/bin/doctor.mjs :14 import { spawn } from 'node:child_process';
  • shell AdelElo13-neuromcp-7596c77/bin/enable-consolidation.mjs :25 import { execFileSync } from 'node:child_process';
  • shell AdelElo13-neuromcp-7596c77/bin/enable-daemon.mjs :35 import { execFileSync } from 'node:child_process';
  • shell AdelElo13-neuromcp-7596c77/bin/enable-zombie-cleanup.mjs :36 import { execFileSync } from 'node:child_process';
  • shell AdelElo13-neuromcp-7596c77/bin/init-wiki.mjs :22 import { execFileSync } from 'node:child_process';
  • shell AdelElo13-neuromcp-7596c77/src/graph/llm-entities.ts :19 import { spawn } from 'node:child_process';
  • shell AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-auto-capture.js :20 const { execFileSync } = require('child_process');
  • shell AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-auto-retrieve.cjs :20 const { spawnSync, execFileSync } = require('node:child_process');
  • shell AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-critic.cjs :31 const { spawnSync } = require('node:child_process');
  • shell AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-persist.cjs :17 const { execFileSync } = require("child_process");

network 12

  • net AdelElo13-neuromcp-7596c77/bin/doctor.mjs :167 import net from 'node:net';
  • net AdelElo13-neuromcp-7596c77/scripts/download-model.mjs :21 const response = await fetch(MODEL_URL);
  • net AdelElo13-neuromcp-7596c77/scripts/download-model.ts :24 const response = await fetch(MODEL_URL);
  • net AdelElo13-neuromcp-7596c77/src/embeddings/ollama.ts :20 const res = await fetch(`${this.host}/api/tags`, { signal: AbortSignal.timeout(3000) });
  • net AdelElo13-neuromcp-7596c77/src/embeddings/openai.ts :24 const res = await fetch(`${this.baseUrl}/models`, {
  • net AdelElo13-neuromcp-7596c77/src/graph/llm-extract.ts :47 const res = await fetch(`${ollamaHost}/api/chat`, {
  • net AdelElo13-neuromcp-7596c77/src/transport/http.ts :1 import { createServer as createHttpServer, type Server, type IncomingMessage, type ServerResponse } from 'node:http';
  • net AdelElo13-neuromcp-7596c77/src/transport/mcp-http-daemon.ts :7 } from 'node:http';
  • net AdelElo13-neuromcp-7596c77/src/vectors/types.ts :19 * namespace filter is applied after a 10× over-fetch (capped at 4000
  • net AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-auto-capture.js :408 const http = require('http');
  • net AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-auto-context.js :84 const res = await fetch(url, { signal: AbortSignal.timeout(3000) });
  • net AdelElo13-neuromcp-7596c77/templates/hooks/neuromcp-critic.cjs :30 const http = require('node:http');

secrets 1

  • secrets AdelElo13-neuromcp-7596c77/src/embeddings/openai.ts :17 this.apiKey = apiKey ?? process.env['OPENAI_API_KEY'] ?? '';

database 58

  • db AdelElo13-neuromcp-7596c77/bin/embed.mjs :24 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/bin/query.mjs :25 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/scripts/ab-sweep.mjs :27 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/scripts/backfill-embeddings.mjs :23 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/scripts/backfill-verbatim.mjs :21 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/scripts/index-wiki.mjs :26 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/scripts/usefulness-dashboard.mjs :28 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/attention.ts :15 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/claims.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/clustering.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/contradiction.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/explain.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/importance.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/priming.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/spaced-repetition.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/summarize.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/cognitive/surprise.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/compress.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/decay.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/dedup.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/entity-merge.ts :22 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/executor.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/planner.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/consolidation/sweep.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/governance/namespace.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/governance/tombstone.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/graph/contradiction-edges.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/graph/entities.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/graph/extract.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/graph/pagerank.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/graph/relations.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/graph/traverse.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/scheduler.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/server.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/storage/database.ts :3 import Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/storage/migrations.ts :2 import type { Database } from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/storage/schema.ts :1 import type { Database } from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/admin.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/agent.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/attribution.ts :13 import type { Database } from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/backfill.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/consolidate.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/episode.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/forget.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/graph.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/recall.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/reflection.ts :18 import type { Database } from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/search.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/stats.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/store-batch.ts :16 import type { Database } from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/store.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/timeline.ts :1 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/transfer.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/tools/verbatim.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/transport/http.ts :4 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/transport/mcp-http-daemon.ts :11 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/vectors/sqlite-vec.ts :2 import type Database from 'better-sqlite3';
  • db AdelElo13-neuromcp-7596c77/src/vectors/types.ts :1 import type Database from 'better-sqlite3';

tool registrations 45

  • register_agent AdelElo13-neuromcp-7596c77/src/registration/agents.ts :13
  • find_expert AdelElo13-neuromcp-7596c77/src/registration/agents.ts :24
  • agent_conflicts AdelElo13-neuromcp-7596c77/src/registration/agents.ts :33
  • review_queue AdelElo13-neuromcp-7596c77/src/registration/agents.ts :43
  • review_memory AdelElo13-neuromcp-7596c77/src/registration/agents.ts :52
  • init_reviews AdelElo13-neuromcp-7596c77/src/registration/agents.ts :60
  • compress_memories AdelElo13-neuromcp-7596c77/src/registration/agents.ts :73
  • find_transferable AdelElo13-neuromcp-7596c77/src/registration/agents.ts :90
  • transfer_memories AdelElo13-neuromcp-7596c77/src/registration/agents.ts :109
  • log_retrieval AdelElo13-neuromcp-7596c77/src/registration/attribution.ts :10
  • cite_memories AdelElo13-neuromcp-7596c77/src/registration/attribution.ts :30
  • usefulness_stats AdelElo13-neuromcp-7596c77/src/registration/attribution.ts :45
  • generate_reflection AdelElo13-neuromcp-7596c77/src/registration/attribution.ts :64
  • store_memory AdelElo13-neuromcp-7596c77/src/registration/core.ts :21
  • search_memory AdelElo13-neuromcp-7596c77/src/registration/core.ts :61
  • recall_memory AdelElo13-neuromcp-7596c77/src/registration/core.ts :104
  • forget_memory AdelElo13-neuromcp-7596c77/src/registration/core.ts :118
  • consolidate AdelElo13-neuromcp-7596c77/src/registration/core.ts :133
  • memory_stats AdelElo13-neuromcp-7596c77/src/registration/core.ts :147
  • export_memories AdelElo13-neuromcp-7596c77/src/registration/core.ts :157
  • import_memories AdelElo13-neuromcp-7596c77/src/registration/core.ts :169
  • backfill_embeddings AdelElo13-neuromcp-7596c77/src/registration/core.ts :181
  • search_all AdelElo13-neuromcp-7596c77/src/registration/core.ts :189
  • start_episode AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :13
  • end_episode AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :25
  • list_episodes AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :36
  • get_episode AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :48
  • cluster_memories AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :59
  • list_clusters AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :78
  • get_cluster_memories AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :91
  • summarize_cluster AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :110
  • summarize_episode AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :121
  • memory_timeline AdelElo13-neuromcp-7596c77/src/registration/episodes.ts :132
  • create_entity AdelElo13-neuromcp-7596c77/src/registration/graph.ts :13
  • create_relation AdelElo13-neuromcp-7596c77/src/registration/graph.ts :26
  • query_graph AdelElo13-neuromcp-7596c77/src/registration/graph.ts :43
  • search_claims AdelElo13-neuromcp-7596c77/src/registration/graph.ts :59
  • compute_centrality AdelElo13-neuromcp-7596c77/src/registration/graph.ts :75
  • update_importance AdelElo13-neuromcp-7596c77/src/registration/graph.ts :100
  • store_verbatim AdelElo13-neuromcp-7596c77/src/registration/verbatim.ts :10
  • search_verbatim AdelElo13-neuromcp-7596c77/src/registration/verbatim.ts :24
  • verbatim_stats AdelElo13-neuromcp-7596c77/src/registration/verbatim.ts :40
  • wiki_ingest AdelElo13-neuromcp-7596c77/src/registration/wiki.ts :10
  • wiki_lint AdelElo13-neuromcp-7596c77/src/registration/wiki.ts :21
  • wiki_briefing AdelElo13-neuromcp-7596c77/src/registration/wiki.ts :30

install hooks 1

  • postinstall AdelElo13-neuromcp-7596c77/package.json :84 node scripts/download-model.mjs || true

declared dependencies 15

  • @modelcontextprotocol/sdk@^1.29.0
  • better-sqlite3@^12.9.0
  • onnxruntime-node@^1.18.0
  • sqlite-vec@^0.1.0
  • zod@^3.25.0
  • @eslint/js@^10.0.1
  • @types/better-sqlite3@^7.6.0
  • @types/node@^22.0.0
  • eslint@^10.2.0
  • tsup@^8.0.0
  • tsx@^4.0.0
  • typescript@^5.7.0
  • typescript-eslint@^8.58.2
  • vitest@^3.0.0
  • @vitest/coverage-v8@^3.0.0