Kiro Memory MCP server

Provides intelligent memory management and task tracking for software development projects with automatic project detection, semantic search, and SQLite-based persistence that maintains context across coding sessions through memory classification, relationship building, and context-aware task creation.
Back to servers
Setup instructions
Provider
cbunting99
Release date
Jul 16, 2025
Language
TypeScript
Stats
14 stars

The Enhanced MCP Memory server is a powerful tool that extends AI assistants with intelligent memory management, task tracking, and project awareness capabilities. It provides semantic search, automatic task extraction, knowledge graphs, and comprehensive project management through a Model Context Protocol (MCP) server interface.

Installation

You can install and run the Enhanced MCP Memory server using one of three methods:

Using uvx (Recommended)

# Install and run with uvx
uvx enhanced-mcp-memory

Manual Installation

# Clone and install
git clone https://github.com/cbunting99/enhanced-mcp-memory.git
cd enhanced-mcp-memory
pip install -e .

# Run the server
enhanced-mcp-memory

Development Setup

# Clone repository
git clone https://github.com/cbunting99/enhanced-mcp-memory.git
cd enhanced-mcp-memory

# Install dependencies
pip install -r requirements.txt

# Run directly
python mcp_server_enhanced.py

MCP Configuration

To connect your MCP client to the Enhanced MCP Memory server, add the following configuration:

For uvx installation:

{
  "mcpServers": {
    "memory-manager": {
      "command": "uvx",
      "args": ["enhanced-mcp-memory"],
      "env": {
        "LOG_LEVEL": "INFO",
        "MAX_MEMORY_ITEMS": "1000",
        "ENABLE_AUTO_CLEANUP": "true"
      }
    }
  }
}

For local installation:

{
  "mcpServers": {
    "memory-manager": {
      "command": "python",
      "args": ["mcp_server_enhanced.py"],
      "cwd": "/path/to/enhanced-mcp-memory",
      "env": {
        "LOG_LEVEL": "INFO",
        "MAX_MEMORY_ITEMS": "1000",
        "ENABLE_AUTO_CLEANUP": "true"
      }
    }
  }
}

Available Tools

The Enhanced MCP Memory server provides various tools organized into different categories:

Core Memory Tools

  • get_memory_context(query) - Get relevant memories and context
  • create_task(title, description, priority, category) - Create new tasks
  • get_tasks(status, limit) - Retrieve tasks with filtering
  • get_project_summary() - Get comprehensive project overview

Sequential Thinking Tools

  • start_thinking_chain(objective) - Begin structured reasoning process
  • add_thinking_step(chain_id, stage, title, content, reasoning) - Add reasoning steps
  • get_thinking_chain(chain_id) - Retrieve complete thinking chain
  • list_thinking_chains(limit) - List recent thinking chains

Context Management Tools

  • create_context_summary(content, key_points, decisions, actions) - Compress context for token optimization
  • start_new_chat_session(title, objective, continue_from) - Begin new conversation with optional continuation
  • consolidate_current_session() - Compress current session for handoff
  • get_optimized_context(max_tokens) - Get token-optimized context
  • estimate_token_usage(text) - Estimate token count for planning

Enterprise Auto-Processing

  • auto_process_conversation(content, interaction_type) - Extract memories and tasks automatically
  • decompose_task(prompt) - Break complex tasks into subtasks

Project Convention Tools

  • auto_learn_project_conventions(project_path) - Automatically detect and learn project patterns
  • get_project_conventions_summary() - Get formatted summary of learned conventions
  • suggest_correct_command(user_command) - Suggest project-appropriate command corrections
  • remember_project_pattern(pattern_type, pattern, description) - Manually store project patterns
  • update_memory_context() - Refresh memory context with latest project conventions

System Management Tools

  • health_check() - Check server health and connectivity
  • get_performance_stats() - Get detailed performance metrics
  • cleanup_old_data(days_old) - Clean up old memories and tasks
  • optimize_memories() - Remove duplicates and optimize storage
  • get_database_stats() - Get comprehensive database statistics

Project Convention Learning

The server intelligently learns project-specific conventions to provide better assistance:

Automatic Detection

  • Operating System: Windows vs Unix, preferred shell and commands
  • Project Type: Node.js, Python, Rust, Go, Java, MCP servers, FastAPI, Django
  • Development Tools: IDEs, linters, formatters, CI/CD configurations
  • Package Management: npm, yarn, pip, poetry, cargo, go modules
  • Build Systems: Vite, Webpack, Make, batch scripts, shell scripts

Smart Command Suggestions

# Instead of generic commands, suggests project-specific ones:
User types: "node server.js"
AI suggests: "Use 'npm run dev' instead for this project"

User types: "python main.py" 
AI suggests: "Use 'uvicorn main:app --reload' for this FastAPI project"

Windows Optimization

  • Automatically detects Windows environment
  • Uses cmd.exe and Windows-appropriate path separators
  • Suggests Windows-compatible commands (e.g., dir instead of ls)
  • Handles Windows-specific Python and Node.js patterns

Configuration Options

Configure the server via environment variables:

Variable Default Description
LOG_LEVEL INFO Logging level (DEBUG, INFO, WARNING, ERROR)
MAX_MEMORY_ITEMS 1000 Maximum memories per project
MAX_CONTEXT_TOKENS 8000 Token threshold for auto-compression
CLEANUP_INTERVAL_HOURS 24 Auto-cleanup interval
ENABLE_AUTO_CLEANUP true Enable automatic cleanup
MAX_CONCURRENT_REQUESTS 5 Max concurrent requests
REQUEST_TIMEOUT 30 Request timeout in seconds
DATA_DIR ~/ClaudeMemory Where to store data and logs

Performance & Monitoring

The server includes built-in performance tracking that you can access using:

  • get_performance_stats() - Get detailed performance metrics
  • health_check() - Check server health and connectivity

The tracking includes:

  • Response time monitoring for all tools
  • Success rate tracking with error counts
  • Memory usage statistics
  • Database performance metrics

Semantic Search

The server uses sentence-transformers for intelligent memory retrieval:

  • Natural language queries like "Find memories about database optimization"
  • Similarity-based matching using embeddings
  • Configurable similarity thresholds
  • Automatic model downloading (~90MB on first run)

Sequential Thinking

The server implements a structured reasoning system:

  • 5-stage thinking process: Analysis → Planning → Execution → Validation → Reflection
  • Token optimization with real-time estimation and compression (30-70% reduction)
  • Context continuity with intelligent session handoffs
  • Auto-extraction of key points, decisions, and action items

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "memory-manager" '{"command":"uvx","args":["kiro-mcp-memory"],"env":{"LOG_LEVEL":"INFO","MAX_MEMORY_ITEMS":"1000","ENABLE_AUTO_CLEANUP":"true"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "memory-manager": {
            "command": "uvx",
            "args": [
                "kiro-mcp-memory"
            ],
            "env": {
                "LOG_LEVEL": "INFO",
                "MAX_MEMORY_ITEMS": "1000",
                "ENABLE_AUTO_CLEANUP": "true"
            }
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "memory-manager": {
            "command": "uvx",
            "args": [
                "kiro-mcp-memory"
            ],
            "env": {
                "LOG_LEVEL": "INFO",
                "MAX_MEMORY_ITEMS": "1000",
                "ENABLE_AUTO_CLEANUP": "true"
            }
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later