Skip to main content
Glama

Memory MCP Server

by evangstav
"""Common test fixtures for all tests.""" import logging from pathlib import Path from typing import AsyncGenerator, List import pytest from memory_mcp_server.interfaces import Entity, Relation from memory_mcp_server.knowledge_graph_manager import KnowledgeGraphManager # Configure logging logger = logging.getLogger(__name__) @pytest.fixture(scope="function") def temp_memory_file(tmp_path: Path) -> Path: """Create a temporary memory file.""" logger.debug(f"Creating temp file in {tmp_path}") return tmp_path / "memory.jsonl" @pytest.fixture(scope="function") def sample_entities() -> List[Entity]: """Provide sample entities for testing.""" return [ Entity("person1", "person", ["likes reading", "works in tech"]), Entity("company1", "company", ["tech company", "founded 2020"]), Entity("location1", "place", ["office building", "in city center"]), ] @pytest.fixture(scope="function") def sample_relations() -> List[Relation]: """Provide sample relations for testing.""" return [ Relation(from_="person1", to="company1", relationType="works_at"), Relation(from_="company1", to="location1", relationType="located_at"), ] @pytest.fixture(scope="function") async def knowledge_graph_manager( temp_memory_file: Path, ) -> AsyncGenerator[KnowledgeGraphManager, None]: """Create a KnowledgeGraphManager instance with a temporary memory file.""" logger.debug("Creating KnowledgeGraphManager") manager = KnowledgeGraphManager(backend=temp_memory_file, cache_ttl=1) logger.debug("KnowledgeGraphManager created") await manager.initialize() yield manager logger.debug("Cleaning up KnowledgeGraphManager") await manager.flush() await manager.close() logger.debug("Cleanup complete")

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/evangstav/python-memory-mcp-server'

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