diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5d49ddb --- /dev/null +++ b/Dockerfile @@ -0,0 +1,28 @@ +# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile +FROM python:3.11-slim + +WORKDIR /app + +# Install system dependencies +RUN apt-get update && apt-get install -y --no-install-recommends \ + build-essential \ + && rm -rf /var/lib/apt/lists/* + +# Set environment variables +ENV PYTHONUNBUFFERED=1 \ + PYTHONDONTWRITEBYTECODE=1 + +# Copy MCP server code +COPY fast-markdown-mcp/ /app/ + +# Install dependencies directly without using a virtual environment +RUN pip install --no-cache-dir -e . + +# Create necessary directories +RUN mkdir -p /app/storage/markdown + +# Expose the port that the MCP server might use for communication +EXPOSE 8765 + +# Command to run the MCP server +CMD ["python", "-m", "fast_markdown_mcp.server", "/app/storage/markdown"] diff --git a/README.md b/README.md index ed34f2c..5a165f4 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,14 @@ DevDocs brings documentation to you. Point it at any tech documentation URL, and DevDocs is designed to be easy to use with Docker, requiring minimal setup for new users. +### Installing via Smithery + +To install DevDocs for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@cyberagiinc/DevDocs): + +```bash +npx -y @smithery/cli install @cyberagiinc/DevDocs --client claude +``` + ### Prerequisites - [Docker](https://docs.docker.com/get-docker/) installed on your system @@ -318,4 +326,4 @@ Final Output Construction: The final answer should be organized, directly addres

Make Software Development Better Again Contribute to DevDocs -

\ No newline at end of file +

diff --git a/smithery.yaml b/smithery.yaml new file mode 100644 index 0000000..2ab2703 --- /dev/null +++ b/smithery.yaml @@ -0,0 +1,16 @@ +# Smithery configuration file: https://smithery.ai/docs/config#smitheryyaml + +startCommand: + type: stdio + configSchema: + # JSON Schema defining the configuration options for the MCP. + type: object + properties: {} + commandFunction: + # A JS function that produces the CLI command based on the given config to start the MCP on stdio. + |- + (config) => ({ + command: 'python', + args: ['-m', 'fast_markdown_mcp.server', '/app/storage/markdown'] + }) + exampleConfig: {}