Add Dockerfile for Glama MCP server checks - #55
Merged
Conversation
Multi-stage build of the roku-dev-studio-mcp workspace package (and its platform/api deps), skipping apps/*. Lets Glama build the server and run its introspection handshake so the listing passes checks and the score badge on the awesome-mcp-servers entry populates. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds a root
Dockerfile(and.dockerignore) that builds theroku-dev-studio-mcpserver so Glama can build it and run its introspection checks.Why
The
glama-checkbot on the awesome-mcp-servers PR requires the server to be listed on Glama and pass checks (build + start + respond to introspection) before the score badge populates. Glama needs a Dockerfile to do that. Our badge is already added to the awesome-mcp-servers entry; this unblocks the Glama build so the score renders.How it works
Multi-stage build:
packages/*-only workspace root (deliberately skipsapps/*/ Electron / Monaco, which the MCP server doesn't use), then builds the three packages in dependency order:platform→api→mcp.ENV CI=trueno-ops each package's guardedpreparescript so there's no out-of-order build;tsconfig.base.jsonis copied because every package extends it.dist/index.cjsand runs it with Node.Verification
The server answers a full introspection handshake (
initialize,tools/list,resources/list,prompts/list→ 36 tools / 4 resources / 3 prompts) over stdio with no Roku device, desktop app, or bridge socket present — the bridge only connects ontools/call, which Glama's check does not invoke. Note: a livedocker buildwasn't run (Docker unavailable in the authoring environment); the build steps mirror the repo's existing per-package build.🤖 Generated with Claude Code