diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d90559f --- /dev/null +++ b/Dockerfile @@ -0,0 +1,28 @@ +# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile +FROM python:3.10-slim + +# Set environment variables to prevent Python from writing .pyc files and enable unbuffered logging +ENV PYTHONDONTWRITEBYTECODE=1 \ + PYTHONUNBUFFERED=1 + +WORKDIR /app + +# Copy only the mcp directory because that's our project +COPY mcp/ ./mcp/ + +# Change working directory to the mcp folder +WORKDIR /app/mcp + +# Upgrade pip +RUN pip install --upgrade pip + +# Install build dependencies and then project package +RUN pip install . + +# Expose port if necessary (the MCP uses stdio transport by default so not needed) + +# Set entrypoint to run the MCP server. The API key can be passed as an environment variable or as an argument. +ENTRYPOINT ["agentmail-mcp"] + +# Default command: if no api-key is provided, it will warn and run with limited functionality +CMD ["--api-key", "${AGENTMAIL_API_KEY}"] diff --git a/smithery.yaml b/smithery.yaml new file mode 100644 index 0000000..9c48864 --- /dev/null +++ b/smithery.yaml @@ -0,0 +1,22 @@ +# Smithery configuration file: https://smithery.ai/docs/config#smitheryyaml + +startCommand: + type: stdio + configSchema: + # JSON Schema defining the configuration options for the MCP. + type: object + required: [] + properties: + apiKey: + type: string + description: AgentMail API key to use for authenticating with AgentMail + services. If not provided, certain functionality may be limited. + commandFunction: + # A JS function that produces the CLI command based on the given config to start the MCP on stdio. + |- + (config) => ({ + command: 'agentmail-mcp', + args: config.apiKey ? ['--api-key', config.apiKey] : [] + }) + exampleConfig: + apiKey: YOUR_AGENTMAIL_API_KEY