MCP Memory Service

by doobidoo• 2.1k•• Scanned•Claim this listing•Request removal
Database Managementagent memoryagentic aiai agentsautogenclaude

Open-source persistent memory for AI agent pipelines (LangGraph, CrewAI, AutoGen) and Claude. REST API + knowledge graph + autonomous consolidation.

MCP Memory Service is an open-source mcp server by doobidoo, written mainly in Python, with 2,056 GitHub stars and the Apache-2.0 license. Its code was last updated Nov 1, 2026.

Scan summary: scanned Nov 5, 2026 at commit 4ff3fcc. Seen able to run shell commands, run dynamic code, connect to the internet. Scan policy

Scanned
Full scan at 4ff3fcc · Nov 5, 2026
Scanned Builds Boots No undeclared egress Reproducible
Static code scanwarn
Secrets scanfail
Dependency audit2 known vulnerabilitiespass
Manifestnonewarn
Buildpass
Boot & handshake28 toolspass
Network egresspass
Reproducible (×3)pass

Findings (43)

  • high
    code-execution issue
    Details are available to the maintainer after claiming this listing.
  • high
    code-execution issue
    Details are available to the maintainer after claiming this listing.
  • high
    code-execution issue
    Details are available to the maintainer after claiming this listing.
  • high
    secrets issue
    Details are available to the maintainer after claiming this listing.
  • high
    secrets issue
    Details are available to the maintainer after claiming this listing.
  • high
    secrets issue
    Details are available to the maintainer after claiming this listing.
  • high
    secrets issue
    Details are available to the maintainer after claiming this listing.
  • high
    secrets issue
    Details are available to the maintainer after claiming this listing.
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/git-analyzer.js:33
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/git-analyzer.js:59
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/git-analyzer.js:322
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/git-analyzer.js:328
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/git-analyzer.js:334
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/project-detector.js:201
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/project-detector.js:202
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    claude-hooks/utilities/project-detector.js:203
  • medium
    Turns off TLS certificate checking, allowing traffic interception.
    scripts/demo/ai_tinkerers_demo.py:78
  • medium
    Turns off TLS certificate checking, allowing traffic interception.
    scripts/maintenance/cleanup_memories.py:28
  • medium
    Turns off TLS certificate checking, allowing traffic interception.
    scripts/maintenance/cleanup_memories.py:123
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    scripts/maintenance/cleanup_organize.py:34
  • medium
    Turns off TLS certificate checking, allowing traffic interception.
    scripts/maintenance/improve_memory_ontology.py:40
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    video/scripts/extract-project-data.ts:46
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    video/scripts/extract-project-data.ts:58
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    video/scripts/extract-project-data.ts:66
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    video/scripts/extract-project-data.ts:113
  • medium
    Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    video/scripts/extract-project-data.ts:118
  • low
    In tests/examples/docs: Runs shell commands. Fine for some tools, but it means the agent can run anything your user can.
    scripts/testing/test_docker_functionality.py:16
  • low
    Possible example credential in docs/tests: curl-auth-header
    2 matches in this file
    docs/architecture/search-examples.md:11
  • low
    Possible example credential in docs/tests: curl-auth-header
    docs/features/knowledge-graph-dashboard.md:316
  • low
    Possible example credential in docs/tests: generic-api-key
    docs/guides/mcp-enhancements.md:229
  • low
    Possible example credential in docs/tests: curl-auth-header
    2 matches in this file
    docs/troubleshooting/cloudflare-authentication.md:69
  • low
    Possible example credential in docs/tests: curl-auth-header
    examples/README.md:67
  • low
    Possible example credential in docs/tests: generic-api-key
    3 matches in this file
    docs/oauth-setup.md:165
  • low
    Possible example credential in docs/tests: curl-auth-header
    3 matches in this file
    docs/oauth-setup.md:199
  • low
    Possible example credential in docs/tests: curl-auth-header
    3 matches in this file
    docs/cloudflare-setup.md:142
  • low
    Possible example credential in docs/tests: curl-auth-header
    3 matches in this file
    docs/quick-setup-cloudflare-dual-environment.md:272
  • low
    Possible example credential in docs/tests: curl-auth-header
    docs/troubleshooting/sync-issues.md:111
  • low
    Possible example credential in docs/tests: curl-auth-header
    2 matches in this file
    docs/archive/CHANGELOG-HISTORIC.md:1297
  • low
    Possible example credential in docs/tests: generic-api-key
    tests/ci/test_hooks_config_secrets_check.sh:56
  • low
    Possible example credential in docs/tests: jwt
    tests/ci/test_hooks_config_secrets_check.sh:95
  • low
    Possible example credential in docs/tests: generic-api-key
    tests/test_nli_llm.py:465
  • low
    setuptools@81.0.0: 2 known vulnerabilities
    PYSEC-2026-3447, GHSA-xmj3-9gf7-h52w
    uv.lock
  • low
    No manifest declaring network access and environment variables (agent.json)

Network activity

During install
files.pythonhosted.orgpypi.org
While running
No connections

Tools exposed (28)

  • memory_store

    Store new information with optional tags. Accepts two tag formats in metadata: - Array: ["tag1", "tag2"] - String: "tag1,tag2" Use `conversation_id` to bypass semantic deduplication when saving incr

  • memory_store_session

    Store a full conversation session as a single memory unit. Use this instead of memory_store when you want to preserve the full context of a multi-turn conversation. All turns are stored together, making session-level retrieval more reliable than storing individual turns separately. Example: { "tur

  • memory_search

    Search memories with flexible modes and filters. Primary tool for finding stored information. USE THIS WHEN: - User asks "what do you remember about X", "recall", "find memories" - Looking for past decisions, preferences, context from previous sessions - Need semantic, exact, or time-based search -

  • memory_list

    List and browse memories with pagination and optional filters. USE THIS WHEN: - User wants to browse all memories ("show me my memories", "list everything") - Need to paginate through large result sets - Filter by tag OR memory type for categorical browsing - User asks "what do I have stored", "bro

  • memory_delete

    Delete memories with flexible filtering. Combine filters for precise targeting. USE THIS WHEN: - User says "delete", "remove", "forget" specific memories - Need to clean up by tag, time range, or specific hash - Bulk deletion with safety preview (dry_run=true) FILTER COMBINATIONS (AND logic when m

  • memory_cleanup

    Find and remove duplicate entries

  • memory_health

    Check database health and get statistics

  • memory_stats

    Get MCP server global cache statistics for performance monitoring. Returns detailed metrics about storage and memory service caching, including hit rates, initialization times, and cache sizes. This tool is useful for:

  • memory_update

    Update memory metadata without recreating the entire memory entry. This provides efficient metadata updates while preserving the original memory content, embeddings, and optionally timestamps. Examp

  • memory_consolidate

    Memory consolidation management - run, monitor, and control memory optimization. USE THIS WHEN: - User asks about memory optimization, cleanup, or consolidation - Need to check consolidation system health - Want to manually trigger or schedule consolidation - Need to pause/resume consolidation jobs

  • memory_ingest

    Ingest documents or directories into memory database. USE THIS WHEN: - User wants to import a document (PDF, TXT, MD, JSON) - Need to batch import a directory of documents - Building knowledge base from existing files SUPPORTED FORMATS: - PDF files (.pdf) - Text files (.txt, .md, .markdown, .rst)

  • memory_harvest

    Extract learnings from Claude Code session transcripts. USE THIS WHEN: - End of session — auto-capture decisions, bugs, conventions, learnings - User asks to "harvest" or "extract learnings" from sessions - Building knowledge base from past sessions MODES: - dry_run=true (DEFAULT): Preview candida

  • memory_quality

    Memory quality management - rate, inspect, and analyze. ACTIONS: - rate: Manually rate a memory's quality (thumbs up/down) - get: Get quality metrics for a specific memory - analyze: Analyze quality distribution across all memories - maintain: Run maintenance cycle (cleanup + conflicts + stale + qu

  • memory_graph

    Memory association graph operations - explore connections between memories. ACTIONS: - connected: Find memories connected via associations (BFS traversal) - path: Find shortest path between two memories - subgraph: Get graph structure around a memory for visualization - extract_entities: Manually e

  • memory_conflicts

    List unresolved memory conflicts (contradictory memories detected by similarity analysis)

  • memory_resolve

    Resolve a memory conflict by choosing a winner

  • mistake_note_add

    Record a mistake pattern for error replay. Tracks what went wrong and the correct action. Auto-increments failure_count for repeated patterns.

  • mistake_note_search

    Search mistake notes by semantic similarity. Use before starting a task to check for known pitfalls and past errors.

  • mistake_note_update

    Update fields of an existing mistake note. Can update failure_count, error_pattern, context_signature, incorrect_action, or correct_action. Content changes create a new hash (delete + re-store).

  • mistake_note_delete

    Delete a mistake note by content hash. Only deletes memories with memory_type='mistake'.

  • get_quarantined_memories

    List memories that have been quarantined due to contradicting active beliefs. Use to review flagged memories.

  • unquarantine_memory

    Release a memory from quarantine. Use when a quarantined memory is valid (e.g., the contradicted belief was wrong).

  • commit_session_legacy

    Record end-of-session learnings from an ephemeral agent. Stores decisions, errors, corrections as structured observations.

  • get_bootstrap_profile

    Generate a behavioral bootstrap profile for an ephemeral agent. Requires write scope because it resets session counters when a fresh start is due. For a read-only profile, read memory://agent/{agent_id}/bootstrap instead.

  • get_onboarding_guide

    Get integration guide for a specific client type.

  • memory_distill

    Extract insights from existing memories via LLM rewriter (batch mode).

  • memory_explore

    Explore a knowledge map of entities, with query-scoped chunks per entity (LLM-free). REQUIRES A POPULATED ENTITY GRAPH — returns {"entities": [], "count": 0} otherwise, for every query. Check with memory_graph {"action": "list_entities"}; populate with memory_quality {"action": "maintain", "dry_run

  • memory_detail

    Get the full ranked detail for a single entity. USE THIS WHEN: - User drills into one entity from a knowledge map ("tell me more about X") - Need the full ranked list of chunks for an entity plus its related entities Returns: - entity_id, name - chunks: ranked memory chunks (relevance now; composi

Automated result for the commit shown. See our scan policy. View the scan log

Maintainers can claim the listing to rescan, or dispute a result.

MCP Memory Service alternatives

View more →

Similar mcp servers in Database Management, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
MCP Memory Service (this page)
doobidoo
2.1kApache-2.0Nov 1, 2026Scanned, no flagged issues
Codebase Memory MCP
DeusData
48kMITNov 1, 2026Scanned, see report
Xerj
xerj-org
19kApache-2.0Nov 1, 2026Scanned, no flagged issues
MCP Toolbox
googleapis
17kApache-2.0Nov 1, 2026Scanned, no flagged issues
Nightingale
ccfos
13kApache-2.0Oct 30, 2026Scanned, no flagged issues
Dbhub
bytebase
3.8kMITOct 26, 2026Scanned, no flagged issues