diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b0bde48 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +# Generated by https://smithery.ai. See: https://smithery.ai/docs/build/project-config +# syntax=docker/dockerfile:1 +FROM python:3.11-slim + +WORKDIR /app + +# Copy project files including README for packaging +COPY pyproject.toml README.md ./ +COPY src/ src/ + +# Install build dependencies (Hatchling) and application +RUN pip install --no-cache-dir . + +# Default command to run the MCP server +ENTRYPOINT ["alibabacloud-dms-mcp-server"] diff --git a/README.md b/README.md index 2a077c5..422ac15 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,8 @@ # AlibabaCloud DMS MCP Server +[![smithery badge](https://smithery.ai/badge/@aliyun/alibabacloud-dms-mcp-server)](https://smithery.ai/server/@aliyun/alibabacloud-dms-mcp-server) + **AI-powered unified data management gateway** that supports connection to over 30+ data sources, serving as a multi-cloud universal data MCP Server to address cross-source data secure access in one-stop solution. - Supports full Alibaba Cloud series: RDS, PolarDB, ADB series, Lindorm series, TableStore series, MaxCompute series. @@ -124,6 +126,14 @@ Key features via MCP include: --- ## Getting Started +### Installing via Smithery + +To install AlibabaCloud DMS Unified Data Gateway for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@aliyun/alibabacloud-dms-mcp-server): + +```bash +npx -y @smithery/cli install @aliyun/alibabacloud-dms-mcp-server --client claude +``` + ### Option 1: Run from Source Code #### Download the Code ```bash diff --git a/smithery.yaml b/smithery.yaml new file mode 100644 index 0000000..87c2d50 --- /dev/null +++ b/smithery.yaml @@ -0,0 +1,37 @@ +# Smithery configuration file: https://smithery.ai/docs/build/project-config + +startCommand: + type: stdio + configSchema: + # JSON Schema defining the configuration options for the MCP. + type: object + required: + - alibabaCloudAccessKeyId + - alibabaCloudAccessKeySecret + properties: + alibabaCloudAccessKeyId: + type: string + description: Alibaba Cloud Access Key ID + alibabaCloudAccessKeySecret: + type: string + description: Alibaba Cloud Access Key Secret + alibabaCloudSecurityToken: + type: string + default: "" + description: Alibaba Cloud Security Token (optional) + commandFunction: + # A JS function that produces the CLI command based on the given config to start the MCP on stdio. + |- + (config) => ({ + command: 'alibabacloud-dms-mcp-server', + args: [], + env: { + ALIBABA_CLOUD_ACCESS_KEY_ID: config.alibabaCloudAccessKeyId, + ALIBABA_CLOUD_ACCESS_KEY_SECRET: config.alibabaCloudAccessKeySecret, + ALIBABA_CLOUD_SECURITY_TOKEN: config.alibabaCloudSecurityToken || '' + } + }) + exampleConfig: + alibabaCloudAccessKeyId: YOUR_ACCESS_KEY_ID + alibabaCloudAccessKeySecret: YOUR_ACCESS_KEY_SECRET + alibabaCloudSecurityToken: ""