Skip to content

Commit 87a26fb

Browse files
chore: add minimal Dockerfile for Glama.ai validation
Needed by Glama (and other MCP marketplaces that sandbox-run servers for validation). The bundle in dist/index.js is self-contained, so the container only needs node:20 — no install step, no package.json copy. End users still install via `npx -y @roamzy/mcp-server` from npm; this Dockerfile is for marketplace validators only. Refs: punkpeye/awesome-mcp-servers#6733 (auto-bot listing requirements).
1 parent edb16f9 commit 87a26fb

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

Dockerfile

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Minimal container for the @roamzy/mcp-server.
2+
#
3+
# Used by Glama.ai (and any other MCP marketplace that runs servers in a
4+
# sandbox) to validate that the server starts and responds to MCP
5+
# introspection requests (`tools/list`, `initialize`).
6+
#
7+
# The bundle in `dist/index.js` is self-contained — esbuild has inlined
8+
# every dependency, including the MCP SDK. So the container only needs
9+
# Node 20+; no `npm install` step, no package.json copy.
10+
#
11+
# End users still install via `npx -y @roamzy/mcp-server` (npm registry)
12+
# or the hosted tarball at https://roamzy.io/mcp/roamzy-mcp-latest.tgz.
13+
# This Dockerfile is for marketplace validators, not for end-user install.
14+
15+
FROM node:20-bookworm-slim
16+
17+
WORKDIR /app
18+
19+
# The bundle is the ONLY file we need to run the server. It speaks stdio
20+
# (the MCP standard transport for locally-hosted servers), so no ports,
21+
# no environment scan beyond the documented ROAMZY_* vars.
22+
COPY dist/index.js /app/index.js
23+
24+
RUN chmod +x /app/index.js
25+
26+
# Anonymous-flow is the default — no env vars required. Marketplaces can
27+
# inject ROAMZY_API_TOKEN / ROAMZY_ENABLE_PURCHASE via env at runtime if
28+
# the user has configured them (see smithery.yaml `configSchema`).
29+
30+
ENTRYPOINT ["node", "/app/index.js"]

0 commit comments

Comments
 (0)