FROM node:24.4.0-alpine3.22 AS builder
# Must be entire project because `prepare` script is run during `npm install` and requires all files.
COPY . /app
WORKDIR /app
# Install all dependencies (including devDependencies) for building
RUN --mount=type=cache,target=/root/.npm npm install
# Build the project (this will use the devDependencies like typescript and shx)
RUN npm run build
FROM node:24.4.0-alpine3.22 AS release
# Install tini for proper signal handling
RUN apk add --no-cache tini
COPY --from=builder /app/dist /app/dist
COPY --from=builder /app/package.json /app/package.json
COPY --from=builder /app/package-lock.json /app/package-lock.json
ENV NODE_ENV=production
WORKDIR /app
RUN npm ci --ignore-scripts --omit-dev
# Install the package globally to make slack-mcp command available
RUN npm install -g .
# Use tini as PID 1 for proper signal handling
ENTRYPOINT ["tini", "--", "slack-mcp"]
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/zencoderai/slack-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server