{"name":"io.github.Astrix-Labs/genesys-memory","slug":"astrix-labs-genesys-memory","title":null,"description":"Open-source causal memory for AI agents: persistent, explainable, MCP-native memory (13 tools).","url":"https://mcp.market/server/astrix-labs-genesys-memory","rating":null,"grade":"B","score":82,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":29,"stars":28,"forks":5,"downloads_week":null,"last_push_at":"2026-09-07T06:05:08.000Z","license":"AGPL-3.0"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/Astrix-Labs/genesys","website":null,"version":"0.5.2","remotes":[],"packages":[{"registryType":"pypi","identifier":"genesys-memory","version":"0.5.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"OpenAI API key for embedding generation (optional — use GENESYS_EMBEDDER=local for no API key)","format":"string","isSecret":true,"name":"OPENAI_API_KEY"},{"description":"Anthropic API key for LLM-based memory processing (optional)","format":"string","isSecret":true,"name":"ANTHROPIC_API_KEY"},{"description":"Embedding provider: 'openai' or 'local' (default: openai)","format":"string","name":"GENESYS_EMBEDDER"}]}],"tools":[{"name":"delete_memory","description":"Permanently delete a memory node and all its edges.","write_action":true,"price_micros":0,"input_schema":null},{"name":"list_core_memories","description":"List all core memories, optionally filtered by category.","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_amend","description":"Record a correction: creates a new memory that supersedes an existing one. The old memory is kept (decayed in recall results), not deleted.","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_explain","description":"Explain a memory's score breakdown.","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_recall","description":"Recall memories using hybrid search (vector + keyword + graph spreading activation).","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_search","description":"Filtered vector search by status, category, date, or entity. Pass an EMPTY query to enumerate by recency instead (no vector search, no embedder needed): with since/active_since this answers 'what's new/changed since <ts>' without knowing what to query for.","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_stats","description":"Get graph statistics.","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_store","description":"Store a new memory in the causal memory graph. Use `related` for writer-specified typed edges (each {id, type}); `related_to` is legacy and always creates caused_by edges. May return `possible_conflicts` — heuristic hints, not verified contradictions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"memory_traverse","description":"Traverse the memory graph from a starting node. Returns reachable nodes AND the edges of the induced subgraph among them (source/target/type/weight/created_by) — a superset of the BFS tree, so paths can be reconstructed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pin_memory","description":"Pin a memory to core status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"promote_to_org","description":"Promote a private memory to org visibility. Caller must own the node and belong to the target org.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_core_preferences","description":"Configure core memory category preferences.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unpin_memory","description":"Unpin a memory and re-evaluate core eligibility.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":82,"grade":"B","scanned_at":"2026-09-25T17:25:02.740Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-25T17:25:02.609Z","components":{"code":{"score":25,"max":25,"notes":["35 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 18 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"genesys-memory","version":"0.5.2","found":true,"license":"AGPL-3.0-or-later","dependencyCount":5,"publishedAt":"2026-07-19T09:52:31.612995Z","repositoryUrl":"https://github.com/Astrix-Labs/papez"}],"repo":{"found":true,"owner":"Astrix-Labs","repo":"genesys","archived":false,"pushedAt":"2026-09-07T06:05:08Z","stars":28,"forks":5,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/306567599?v=4","ownerCreatedAt":"2026-07-18T17:31:21Z","license":"AGPL-3.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/306567599?v=4&s=128","source":"github"},"presence":{"stars":28,"forks":5,"downloadsWeek":null,"license":"AGPL-3.0","lastPushAt":"2026-09-07T06:05:08.000Z","score":29}}}},"grade_history":[],"reviews":[]}