Skip to main content
Glama

MCP Agent Memory - v2.0

Python 3.10+ License: MIT Tests

Production-ready MCP server providing shared memory for multi-agent collaboration.


Overview

MCP Agent Memory is an enhanced Model Context Protocol (MCP) server that enables multiple AI agents (like Claude Code instances) to communicate asynchronously through a shared memory space. Think of it as a sophisticated shared notepad where AI agents can leave messages, search for information, and coordinate their work.

Key Features

  • πŸ”’ Concurrency Safe - File locking for shared environments

  • πŸ“ Full CRUD - Create, Read, Update, Delete operations

  • πŸ” Advanced Search - Full-text search across all fields

  • 🏷️ Organization - Tags, priority levels, metadata

  • πŸ“Š Analytics - Comprehensive memory statistics

  • πŸ’Ύ Reliable - Automatic backups and corruption recovery

  • πŸ“‹ Structured Logging - Complete operation visibility

  • πŸ›‘οΈ Health Monitoring - Built-in health check system


Quick Start

Installation

  1. Clone or download this repository

  2. Install dependencies:

    pip install mcp pydantic
  3. Run the server:

    python3 shared_memory_mcp.py

Basic Usage

# Add a memory entry
await add_memory(
    agent_name="claude-alpha",
    content="Analysis complete. Found 3 key insights.",
    tags=["analysis", "complete"],
    priority="high"
)

# Search for entries
results = await search_memory(query="analysis")

# Get statistics
stats = await get_memory_stats()

Configuration

Add to your Claude Code config (~/.claudeCode/config.json):

{
  "mcpServers": {
    "shared-memory": {
      "command": "python3",
      "args": ["/path/to/shared_memory_mcp.py"]
    }
  }
}

What's New in v2.0

New Tools (6 total)

  • βœ… update_memory - Modify existing entries

  • βœ… delete_memory - Remove specific entries

  • βœ… get_memory - Retrieve single entry by ID

  • βœ… search_memory - Full-text search

  • βœ… get_memory_stats - Memory analytics

  • βœ… health_check - System health monitoring

Enhanced Tools

  • ⚑ add_memory - Now supports tags, priority, metadata

  • ⚑ read_memory - Advanced filtering and sorting

  • ⚑ clear_memory - Auto-backup before clearing

Core Improvements

  • πŸ”’ Thread-safe file locking

  • πŸ’Ύ Automatic backups (keeps 10)

  • πŸ“ Structured logging

  • πŸ”„ Auto-rotation at 1000 entries

  • πŸ›‘οΈ Corruption recovery

  • πŸ†” Unique entry IDs (UUID)

Zero breaking changes! All v1 code works without modification.


Architecture

MCP Agent Memory v2.0
β”œβ”€β”€ shared_memory_mcp.py      # Main server (9 MCP tools)
β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ file_lock.py           # Concurrency safety
β”‚   └── logger.py              # Structured logging
β”œβ”€β”€ tests/
β”‚   β”œβ”€β”€ test_memory_operations.py
β”‚   └── test_concurrency.py
└── docs/
    β”œβ”€β”€ API_REFERENCE_V2.md    # Complete API docs
    β”œβ”€β”€ CHANGELOG_V2.md        # Version history
    β”œβ”€β”€ UPGRADE_GUIDE.md       # v1β†’v2 migration
    └── IMPLEMENTATION_SUMMARY.md

Storage

~/.shared_memory_mcp/
β”œβ”€β”€ memory.json              # Main storage
β”œβ”€β”€ mcp_memory.log          # Rotating logs
└── backups/                # Auto-backups (10 kept)
    └── memory_backup_*.json

Documentation

Getting Started

Reference

Developer


API Overview

Memory Operations

Tool

Description

Type

add_memory

Create new entry with tags/priority

Write

read_memory

Read with advanced filtering

Read

update_memory

Modify existing entry

Write

delete_memory

Remove specific entry

Write

get_memory

Retrieve single entry by ID

Read

search_memory

Full-text search

Read

get_memory_stats

Memory analytics

Read

clear_memory

Clear all entries

Write

health_check

System health status

Read

See API Reference for detailed documentation.


Testing

Run Basic Tests

python3 run_basic_tests.py

Run Full Test Suite (requires pytest)

pip install pytest pytest-cov
pytest tests/ -v --cov

Test Coverage

  • βœ… 70+ test cases

  • βœ… Unit tests (operations, filtering, search)

  • βœ… Concurrency tests (locking, atomic writes)

  • βœ… Integration tests


Development

Setup Development Environment

# Install dev dependencies
pip install -r requirements-dev.txt

# Install pre-commit hooks
pre-commit install

# Run tests
python3 run_basic_tests.py

# Type checking
mypy shared_memory_mcp.py

# Linting
ruff check .

Code Quality Tools

  • βœ… pytest - Testing framework

  • βœ… mypy - Type checking

  • βœ… ruff - Linting and formatting

  • βœ… pre-commit - Git hooks


Performance

Typical Operations

  • Add entry: 5-15ms (includes backup)

  • Read entries: 2-10ms

  • Search (100 entries): 1-5ms

  • Update/Delete: 5-15ms (includes backup)

Limits

  • Max words per entry: 200

  • Max tags per entry: 10

  • Max entries before rotation: 1000

  • File lock timeout: 10 seconds

  • Backup retention: 10 backups


Use Cases

Multi-Agent Collaboration

# Agent A: Data collector
await add_memory(
    agent_name="data-collector",
    content="Collected 10,000 data points",
    tags=["data", "ready-for-analysis"],
    priority="high"
)

# Agent B: Analyzer picks up work
pending = await read_memory(tags=["ready-for-analysis"])

Task Tracking

# Start task
result = await add_memory(
    agent_name="worker",
    content="Starting analysis...",
    tags=["analysis", "in-progress"],
    priority="high"
)

# Update on completion
await update_memory(
    entry_id=result.entry_id,
    tags=["analysis", "complete"],
    priority="low"
)

Knowledge Base

# Search for information
results = await search_memory(
    query="user behavior insights",
    limit=10
)

# Get statistics
stats = await get_memory_stats()
print(f"Total knowledge: {stats.total_entries} entries")

FAQ

Q: Is v2 compatible with v1 code? A: Yes! 100% backward compatible. All v1 code works without changes.

Q: How does migration work? A: Automatic. v2 detects v1 format and migrates on first write.

Q: Can multiple agents write simultaneously? A: Yes! File locking ensures safe concurrent access.

Q: What happens if storage gets corrupted? A: Automatic recovery from the most recent valid backup.

Q: How much disk space does it use? A: ~500-1000 bytes per entry. 1000 entries β‰ˆ 500KB-1MB.

Q: Can I use it for production? A: Yes! v2 is production-ready with reliability features.

See UPGRADE_GUIDE.md for more details.


Troubleshooting

Common Issues

File lock timeout

# Check for other running instances
ps aux | grep shared_memory_mcp

# Increase timeout in code if needed

JSON parse error

# Restore from backup
cp ~/.shared_memory_mcp/backups/memory_backup_*.json \
   ~/.shared_memory_mcp/memory.json

Check system health

health = await health_check({})
print(health.message)  # "All systems operational"

Logs

# View logs
tail -f ~/.shared_memory_mcp/mcp_memory.log

# Check for errors
grep ERROR ~/.shared_memory_mcp/mcp_memory.log

Contributing

Contributions welcome! Please:

  1. Fork the repository

  2. Create a feature branch

  3. Add tests for new features

  4. Ensure all tests pass

  5. Submit a pull request

Code Style

  • Use type hints

  • Follow existing patterns

  • Add docstrings

  • Run pre-commit hooks


License

MIT License - See LICENSE file for details


Changelog

v2.0.0 (2025-10-30)

  • βœ… Added concurrency safety (file locking)

  • βœ… Added structured logging

  • βœ… Added 6 new MCP tools

  • βœ… Enhanced data model (tags, priority, metadata)

  • βœ… Added automatic backups and recovery

  • βœ… Added comprehensive test suite (70+ tests)

  • βœ… Added complete documentation

  • βœ… Zero breaking changes

See CHANGELOG_V2.md for detailed history.


Acknowledgments

Built on the Model Context Protocol (MCP) by Anthropic.

Enhanced with production-ready features while maintaining the simplicity and elegance of the original design.



Made with ❀️ for multi-agent collaboration

Version 2.0.0 - Production Ready πŸš€

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/justanotherspy/mcp-agent-memory'

If you have feedback or need assistance with the MCP directory API, please join our Discord server