diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..79cdb76 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,30 @@ +# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile +FROM python:3.12-slim + +# set environment variables +ENV PYTHONDONTWRITEBYTECODE=1 +ENV PYTHONUNBUFFERED=1 + +# set work directory +WORKDIR /app + +# install system dependencies +RUN apt-get update && apt-get install -y --no-install-recommends \ + gcc \ + && rm -rf /var/lib/apt/lists/* + +# install python dependencies +COPY pyproject.toml . +COPY uv.lock . +COPY README.md . +COPY memory_mcp ./memory_mcp +COPY tests ./tests + +RUN pip install --upgrade pip \ + && pip install . + +# expose port if necessary (optional) +# EXPOSE 8000 + +# command to run the server +ENTRYPOINT ["memory-mcp"] diff --git a/README.md b/README.md index 872f0f3..8f23917 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,18 @@ # Memory MCP +[![smithery badge](https://smithery.ai/badge/@drdee/memory-mcp)](https://smithery.ai/server/@drdee/memory-mcp) A Model Context Protocol server for storing and retrieving memories using low-level Server implementation and SQLite storage. ## Installation +### Installing via Smithery + +To install Memory MCP for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@drdee/memory-mcp): + +```bash +npx -y @smithery/cli install @drdee/memory-mcp --client claude +``` + This project uses [uv](https://github.com/astral-sh/uv) for dependency management instead of pip. uv is a fast, reliable Python package installer and resolver. Install using uv: @@ -173,4 +182,4 @@ ruff check memory_mcp tests ```bash mypy memory_mcp -``` \ No newline at end of file +``` diff --git a/smithery.yaml b/smithery.yaml new file mode 100644 index 0000000..b35b416 --- /dev/null +++ b/smithery.yaml @@ -0,0 +1,12 @@ +# Smithery configuration file: https://smithery.ai/docs/config#smitheryyaml + +startCommand: + type: stdio + configSchema: + # JSON Schema defining the configuration options for the MCP. + {} + commandFunction: + # A JS function that produces the CLI command based on the given config to start the MCP on stdio. + |- + (config) => ({ command: 'memory-mcp', args: [] }) + exampleConfig: {}