Skip to main content

# GreeumMCP

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

GreeumMCP

GreeumMCP is a Model Context Protocol (MCP) server implementation for the Greeum Memory Engine. It enables seamless integration of Greeum's powerful memory capabilities with Large Language Models (LLMs) that support the MCP standard, such as Claude.

Features

  • Memory Management: Store, retrieve, and search through long-term and short-term memories
  • Time-based Recall: Search memories based on temporal references like "yesterday" or "two weeks ago"
  • Semantic Search: Find memories based on semantic similarity
  • Memory Enrichment: Automatically extract keywords, tags, and compute importance scores
  • Multiple Transport Options: Supports stdio, HTTP, and WebSocket transports
  • Claude Desktop Integration: Ready to use with Claude Desktop

Installation

๐Ÿš€ ๋น ๋ฅธ ์„ค์น˜ (UV ์‚ฌ์šฉ - ๊ถŒ์žฅ)

์„ค์น˜ ์—†์ด ๋ฐ”๋กœ ์‹คํ–‰ (uvx)
# UV ์„ค์น˜ (์ฒ˜์Œ ํ•œ ๋ฒˆ๋งŒ)
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# GreeumMCP ์‹คํ–‰ (์„ค์น˜ ์—†์ด)
uvx greeummcp

๐Ÿ“ฆ ์ผ๋ฐ˜ ์„ค์น˜ (pip)

Linux / macOS (bash / zsh)
# 1) ๊ฐ€์ƒ ํ™˜๊ฒฝ(๊ถŒ์žฅ)
python3 -m venv venv && source venv/bin/activate

# 2) ์ตœ์‹  ์•ˆ์ •ํŒ ์„ค์น˜
pip install greeummcp

# 3) ๊ฐœ๋ฐœ ๋„๊ตฌ๊นŒ์ง€ ์„ค์น˜ํ•˜๋ ค๋ฉด
pip install "greeummcp[dev]"
Windows (PowerShell)
# 1) ๊ฐ€์ƒ ํ™˜๊ฒฝ(๊ถŒ์žฅ)
python -m venv venv
.\venv\Scripts\Activate.ps1

# 2) ํŒจํ‚ค์ง€ ์„ค์น˜
pip install greeummcp

๐Ÿ“‹ ํ•„์ˆ˜ ์กฐ๊ฑด

  • Python 3.10 ์ด์ƒ
  • greeum v0.6.1 ์ด์ƒ์€ greeummcp๊ฐ€ ์ž๋™์œผ๋กœ ์˜์กด์„ฑ์œผ๋กœ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
  • (์„ ํƒ) C/C++ Build Tools โ€“ ์ผ๋ถ€ ํ™•์žฅ ๊ธฐ๋Šฅ์—์„œ ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โœ… ์„ค์น˜ ํ™•์ธ

# pip ์„ค์น˜ ์‹œ
greeummcp version

# uvx ์‚ฌ์šฉ ์‹œ
uvx greeummcp version

์œ„ ๋ช…๋ น์ด ๋ฒ„์ „ ๋ฌธ์ž์—ด(์˜ˆ: 0.2.4)์„ ์ถœ๋ ฅํ•˜๋ฉด ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.


๋น ๋ฅธ ์‹œ์ž‘

# ๊ธฐ๋ณธ ์‹คํ–‰ (data ๋””๋ ‰ํ† ๋ฆฌ๋Š” ./data ์‚ฌ์šฉ)
greeummcp

# ์ปค์Šคํ…€ ๋ฐ์ดํ„ฐ ๋””๋ ‰ํ† ๋ฆฌ ์ง€์ •
greeummcp /path/to/data

# HTTP transport ์‚ฌ์šฉ
greeummcp --transport http --port 8000

Claude Desktop ์—ฐ๋™

๐ŸŒŸ ๋ฐฉ๋ฒ• 1: UV ์‚ฌ์šฉ (๊ฐ€์žฅ ๊ฐ„๋‹จ)

๋ชจ๋“  OS ๊ณตํ†ต
{
  "mcpServers": {
    "greeum_mcp": {
      "command": "uvx",
      "args": ["greeummcp"]
    }
  }
}

์ปค์Šคํ…€ ๋ฐ์ดํ„ฐ ๋””๋ ‰ํ† ๋ฆฌ ์ง€์ •:

{
  "mcpServers": {
    "greeum_mcp": {
      "command": "uvx",
      "args": ["greeummcp", "/path/to/data"]
    }
  }
}

๐Ÿ“ฆ ๋ฐฉ๋ฒ• 2: pip ์„ค์น˜ ํ›„ ์‚ฌ์šฉ

Windows
{
  "mcpServers": {
    "greeum_mcp": {
      "command": "greeummcp.exe",
      "args": ["C:\\Users\\USERNAME\\greeum-data"]
    }
  }
}

๊ธฐ๋ณธ ์„ค์ • (./data ์‚ฌ์šฉ):

{
  "mcpServers": {
    "greeum_mcp": {
      "command": "greeummcp.exe"
    }
  }
}
macOS / Linux
{
  "mcpServers": {
    "greeum_mcp": {
      "command": "greeummcp",
      "args": ["/home/username/greeum-data"]
    }
  }
}

๊ธฐ๋ณธ ์„ค์ • (./data ์‚ฌ์šฉ):

{
  "mcpServers": {
    "greeum_mcp": {
      "command": "greeummcp"
    }
  }
}
  1. ์œ„ ์„ค์ •์„ claude_desktop_config.json์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  2. Claude Desktop ์žฌ์‹œ์ž‘ โ†’ ๐Ÿ”จ ์•„์ด์ฝ˜ ํด๋ฆญํ•ด Tool ๋ชฉ๋ก์— greeum_mcp ๊ฐ€ ๋‚˜ํƒ€๋‚˜๋Š”์ง€ ํ™•์ธ.

Cursor IDE ์—ฐ๋™

ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— .cursor/mcp.json ํŒŒ์ผ์„ ์ƒ์„ฑ:

{
  "greeum_mcp": {
    "command": "greeummcp",
    "args": ["${workspaceFolder}/data"]
  }
}

์ €์žฅ ํ›„ Cursor๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๋ฉด MCP ํˆด์ด ์ž๋™์œผ๋กœ ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.


Quick Start

Running as a Command-Line Tool

GreeumMCP can be run directly from the command line:

# Run with default settings (stdio transport, ./data directory)
greeummcp

# Specify custom data directory
greeummcp /path/to/data

# Using HTTP transport
greeummcp --transport http --port 8000

# Legacy command (still supported)
greeum_mcp --data-dir ./data --transport stdio

Using as a Python Library

from greeummcp import run_server

# Run with default settings
run_server()

# Run with custom settings
run_server(
    data_dir="./data",
    server_name="greeum_mcp",
    port=8000,
    transport="http",
    greeum_config={
        "ttl_short": 3600,  # 1 hour
        "ttl_medium": 86400,  # 1 day
        "ttl_long": 604800,  # 1 week
        "default_language": "auto"
    }
)

Claude Desktop Integration

GreeumMCP can be used with Claude Desktop to provide memory capabilities to Claude. The package includes a helper script to set up the integration:

# Run the Claude Desktop integration helper
python examples/claude_desktop.py

# Create the Claude Desktop configuration file
python examples/claude_desktop.py --create --data-dir ./data

After setting up, restart Claude Desktop, and you should see the GreeumMCP tools available in the tools panel (hammer icon).

Manual Configuration for Claude Desktop

You can also manually configure Claude Desktop to use GreeumMCP by creating a JSON configuration file:

  1. Locate or create the Claude Desktop configuration file:

    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  2. Add the GreeumMCP server configuration to this file:

Windows Example:

{
    "mcpServers": {
        "greeum_mcp": {
            "command": "python",
            "args": [
                "-m", "greeummcp.server",
                "--data-dir", "C:\\Users\\USERNAME\\Documents\\greeum-data",
                "--transport", "stdio"
            ]
        }
    }
}

macOS/Linux Example:

{
    "mcpServers": {
        "greeum_mcp": {
            "command": "python3",
            "args": [
                "-m", "greeummcp.server",
                "--data-dir", "/Users/USERNAME/Documents/greeum-data",
                "--transport", "stdio"
            ]
        }
    }
}
  1. Make sure to replace USERNAME and adjust paths according to your system.
  2. Restart Claude Desktop to apply the changes.
  3. Verify that the tools are available by looking for the hammer icon in the Claude Desktop interface.

Cursor Integration

To use GreeumMCP with Cursor, create a .cursor/mcp.json file in your project root:

{
  "greeum_mcp": {
    "command": "python",
    "args": ["-m", "greeummcp.server", "--data-dir", "YOUR_DATA_DIR", "--transport", "stdio", "--server-name", "greeum_mcp"]
  }
}

Important Notes

  • Server naming: Always use underscores (_) instead of hyphens (-) in server names to avoid MCP compatibility issues.
  • Data directory: Use an absolute path for the data directory to ensure reliability.

Verifying the Integration

To verify that GreeumMCP is working properly with Claude Desktop:

  1. Click the hammer icon in Claude Desktop.
  2. You should see GreeumMCP tools listed (like add_memory, query_memory, etc.).
  3. Try adding a memory with a query like "Save this information: Claude was developed by Anthropic."
  4. Then try retrieving it with "What information do you have about Claude?"

If you encounter issues:

  • Check Claude Desktop logs in ~/Library/Logs/Claude/ (macOS) or %APPDATA%\Claude\Logs (Windows)
  • Ensure the GreeumMCP server is properly installed and paths are correct
  • Verify your configuration file has the correct syntax

Memory Tools

GreeumMCP provides the following memory-related tools:

  • add_memory: Add a new memory to long-term storage
  • query_memory: Search memories by query text
  • retrieve_memory: Retrieve a specific memory by ID
  • update_memory: Update an existing memory
  • delete_memory: Delete a memory by ID
  • search_time: Search memories based on time references
  • generate_prompt: Generate a prompt that includes relevant memories
  • extract_keywords: Extract keywords from text
  • verify_chain: Verify the integrity of the memory blockchain
  • server_status: Get server status information

Example Usage

Interactive CLI

GreeumMCP includes an interactive CLI example for trying out the memory capabilities:

python examples/cli_example.py --data-dir ./data

This opens an interactive shell where you can:

greeum> add This is my first memory
Memory added with ID: 1

greeum> add This is my second memory about Python
Memory added with ID: 2

greeum> search Python
Found 1 results:

--- Result 1 ---
ID: 2
Content: This is my second memory about Python
Timestamp: 2023-07-01T12:34:56
Keywords: memory, Python, second
Importance: 0.65

Development

Project Structure

GreeumMCP/
โ”œโ”€โ”€ greeummcp/                   # Main package
โ”‚   โ”œโ”€โ”€ __init__.py              # Package initialization
โ”‚   โ”œโ”€โ”€ server.py                # MCP server implementation
โ”‚   โ”œโ”€โ”€ tools/                   # MCP tools implementation
โ”‚   โ”œโ”€โ”€ resources/               # MCP resources implementation
โ”‚   โ”œโ”€โ”€ prompts/                 # MCP prompts implementation
โ”‚   โ””โ”€โ”€ adapters/                # Greeum integration adapters
โ”œโ”€โ”€ examples/                    # Usage examples
โ”œโ”€โ”€ tests/                       # Tests
โ”œโ”€โ”€ README.md                    # Project documentation
โ”œโ”€โ”€ setup.py                     # Package setup
โ””โ”€โ”€ requirements.txt             # Dependencies

Running Tests

pip install -e ".[dev]"
pytest

License

GreeumMCP is licensed under the MIT License.

Acknowledgments

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

greeummcp-1.0.0.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

greeummcp-1.0.0-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file greeummcp-1.0.0.tar.gz.

File metadata

  • Download URL: greeummcp-1.0.0.tar.gz
  • Upload date:
  • Size: 35.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for greeummcp-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7c3941fcf9db1711477615f0e022acc6300c90e1079bb795d1a7a8842436bff9
MD5 34e4ea280fd4c9cd54e45f8df709ac5a
BLAKE2b-256 cb4de7cb1eee0c72cac0ac8bb7f002d6befe75c0b6395528b6a8c44f4582483b

See more details on using hashes here.

File details

Details for the file greeummcp-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: greeummcp-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for greeummcp-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b9228d226fc3a2ed4019f85e5b6ea64f0433d380b73bb3f20597c862aea461fc
MD5 573d4fb69df2df8c9fff16137b7f61dd
BLAKE2b-256 6831c400cdc3e4ac4a21c956bd4d19a1fa3d1c8050801ede047eb4396409f804

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page