github TypeScript analyzed a066a11

Agripp87/memoria_mcp

v0.0.2
github

Persistent, plain-text memory for Claude over MCP — Markdown files you own, hybrid search, OAuth 2.1 remote transport, agentic self-maintenance

maintainer
Agripp87
licence
Apache-2.0
first seen
2026-09-02
last seen
2026-09-12
releases · 30d
2
short id

Drift inferred · capture-to-capture

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

capabilities 17 tools
transport stdio · streamable-http · http counts 17 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • memory_compact
  • memory_compile
  • memory_daily
  • memory_entities
  • memory_fuse
  • memory_index
  • memory_ingest
  • memory_lint
  • memory_list
  • memory_optimize
  • memory_priority
  • memory_read
  • memory_reflect
  • memory_search
  • memory_sources
  • memory_stats
  • memory_write
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit a066a11 · analyzer v33 · 2d ago

danger signals1

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

code files: 77

filesystem 40

  • fs Agripp87-memoria_mcp-a066a11/mcp-server/eval/run.mjs :32 import fs from "node:fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/demo.mjs :10 import fs from "node:fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/generate-demo-data.mjs :15 import fs from "node:fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/mcp-start.mjs :22 import { existsSync, mkdirSync, rmSync, statSync, writeFileSync } from "node:fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/plugin-start.mjs :23 import { existsSync } from "node:fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/verify-vector-space.mjs :31 import { readFileSync } from "node:fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/buffer.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/compile_queue.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/crypto.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/dashboard.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/dataloss.test.ts :14 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/entities.test.ts :4 import fs from "fs";
show 28 more
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/filewatcher.test.ts :2 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/http.integration.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/index_rebuild.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/ingestion.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/lint_checks.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/optimize.test.ts :7 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/pathsafety.test.ts :2 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/phase5.test.ts :12 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/privacy.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/provenance.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/registry.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/relevance_fixture.test.ts :16 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/scheduler.test.ts :4 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/store.test.ts :6 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/tools.test.ts :16 import fs from "fs";
  • fs (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/vector_sampling.test.ts :4 import fs from "fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/adapters/calendar.ts :11 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/adapters/custom.ts :16 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/buffer.ts :15 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/crypto.ts :16 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/ingestion.ts :13 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/provenance.ts :21 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/registry.ts :12 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/dashboard.ts :17 import fs from "fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/entities.ts :20 import fs from "fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/http.ts :21 import * as fs from "node:fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/lint.ts :12 import fs from "fs";
  • fs Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :7 import fs from "fs";

shell / exec 5

  • shell (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/demo.mjs :9 import { spawn, spawnSync } from "node:child_process";
  • shell (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/mcp-start.mjs :21 import { spawnSync } from "node:child_process";
  • shell (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/plugin-start.mjs :22 import { spawnSync } from "node:child_process";
  • shell Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/adapters/custom.ts :18 import { execFileSync } from "node:child_process";
  • shell Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/registry.ts :14 import { execFileSync } from "node:child_process";

network 3

  • net Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/adapters/email.ts :84 for await (const message of this.client.fetch(query, {
  • net Agripp87-memoria_mcp-a066a11/mcp-server/src/dashboard.ts :1046 const res = await fetch('/dashboard/login', {
  • net Agripp87-memoria_mcp-a066a11/mcp-server/src/embeddings.ts :89 const res = await fetch("https://api.openai.com/v1/embeddings", {

secrets 6

  • secrets (weak) Agripp87-memoria_mcp-a066a11/mcp-server/scripts/demo.mjs :20 const KEY = process.env.MEMORIA_API_KEY || "demo-key-123";
  • secrets (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/crypto.test.ts :78 require: process.env.MEMORIA_REQUIRE_ENCRYPTION_KEY,
  • secrets (weak) Agripp87-memoria_mcp-a066a11/mcp-server/src/__tests__/http.integration.test.ts :16 process.env.MEMORIA_API_KEY = KEY;
  • secrets Agripp87-memoria_mcp-a066a11/mcp-server/src/collector/crypto.ts :57 const requireEnvKey = process.env.MEMORIA_REQUIRE_ENCRYPTION_KEY === "true";
  • secrets Agripp87-memoria_mcp-a066a11/mcp-server/src/embeddings.ts :41 const hasOpenAI = !!process.env.OPENAI_API_KEY;
  • secrets Agripp87-memoria_mcp-a066a11/mcp-server/src/http.ts :54 const API_KEY = process.env.MEMORIA_API_KEY;

database 2

  • db Agripp87-memoria_mcp-a066a11/mcp-server/src/http.ts :172 import DatabaseConstructor from "better-sqlite3";
  • db Agripp87-memoria_mcp-a066a11/mcp-server/src/store.ts :14 import Database from "better-sqlite3";

tool registrations 17

  • memory_search Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :410
  • memory_read Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :469
  • memory_write Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :523
  • memory_list Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :604
  • memory_index Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :668
  • memory_daily Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :694
  • memory_optimize Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :736
  • memory_reflect Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :758
  • memory_stats Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :801
  • memory_lint Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :919
  • memory_compile Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :931
  • memory_compact Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :1109
show 5 more
  • memory_entities Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :1247
  • memory_sources Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :1632
  • memory_ingest Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :1760
  • memory_fuse Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :1824
  • memory_priority Agripp87-memoria_mcp-a066a11/mcp-server/src/tools.ts :1897

install hooks 1

  • prepublishOnly Agripp87-memoria_mcp-a066a11/mcp-server/package.json :44 npm run build

declared dependencies 23

  • @modelcontextprotocol/sdk@^1.30.0
  • @types/js-yaml@^4.0.9
  • @types/markdown-it@^14.1.2
  • better-sqlite3@^12.11.1
  • express@^5.2.1
  • express-rate-limit@^8.7.0
  • js-yaml@^4.3.2
  • markdown-it@^15.0.2
  • zod@^4.5.4
  • @eslint/js@^10.0.1
  • @types/better-sqlite3@^7.6.13
  • @types/express@^5.0.6
show 11 more
  • @types/node@^26.4.1
  • @types/supertest@^7.2.1
  • @vitest/coverage-v8@^4.1.11
  • eslint@^10.9.1
  • eslint-config-prettier@^10.1.8
  • prettier@^3.9.6
  • supertest@^7.2.2
  • typescript@^6.0.2
  • typescript-eslint@^8.69.0
  • vitest@^4.1.11
  • @huggingface/transformers@^3.8.1