mirror of
https://github.com/basicmachines-co/basic-memory
synced 2026-06-21 13:47:35 +00:00
48 lines
1.1 KiB
Python
48 lines
1.1 KiB
Python
"""Main MCP entrypoint for Basic Memory.
|
|
|
|
Creates and configures the shared MCP instance and handles server startup.
|
|
"""
|
|
|
|
import sys
|
|
from loguru import logger
|
|
|
|
from basic_memory.config import config
|
|
# Import shared mcp instance
|
|
from basic_memory.mcp.server import mcp
|
|
|
|
# Import tools to register them
|
|
from basic_memory.mcp.tools import knowledge, search, documents
|
|
__all__ = ["mcp", "knowledge", "search", "documents"]
|
|
|
|
|
|
def setup_logging(home_dir: str = config.home, log_file: str = "basic-memory.log"):
|
|
"""Configure logging for the application."""
|
|
# Remove default handler
|
|
logger.remove()
|
|
log = f"{home_dir}/{log_file}"
|
|
|
|
# Add file handler with rotation
|
|
logger.add(
|
|
log,
|
|
rotation="100 MB",
|
|
retention="10 days",
|
|
backtrace=True,
|
|
diagnose=True,
|
|
enqueue=True,
|
|
colorize=False,
|
|
)
|
|
|
|
# Add stderr handler
|
|
logger.add(
|
|
sys.stderr,
|
|
colorize=True,
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
home_dir = config.home
|
|
setup_logging(home_dir)
|
|
logger.info("Starting Basic Memory MCP server")
|
|
logger.info(f"Home directory: {home_dir}" )
|
|
mcp.run() |