11 days ago
This is a follow-on post to one that was resolved last week by clashing involving a cache not invalidating on build that’s somewhat similar in nature but apparently outside the scope of env var NO_CHACHE=1 solution clashing provided. I’m a non-coder and had GPT‑5 draft the specifics for the support guidance I’m needing below. I appreciate any suggestions or guidance and apologize for the lengthy read.
Context
Project: DC_n8n CE QMode w/ WH Processor on Railway VPC, service “mcp‑streamable‑test” (Streamable HTTP MCP JSON‑RPC test service).
Source Repo: DC-AAIA/mcp-streamable-test (branch: main).
Region: us‑west2. One replica. Auth via HTTP Bearer.
Relevant docs I’m instructing GPT‑5 to use as its source of truth as part of a dedicated Abacus AI project knowledge collection: DC-AAIA fork of Railway docs: https://github.com/DC-AAIA/railwayapp-docs
Functional goal: Service is supposed to respond to JSON‑RPC calls (initialize, list_tools, call_tool) per czlonkowski/n8n-mcp spec.
Observed behavior
Despite multiple successful redeploys from GitHub commits (with cache clear toggled), the service is not actually executing the updated server.js code.
Example:
I added a marker log at the top of server.js v0.0.7:
console.log("
v0.0.7 handler active!");
This log never appears in Railway deploy logs.
Instead I only ever see:
Raw body: { jsonrpc: '2.0', id: 'init-1', method: 'initialize', ... }
Parsed method: initialize
The initialize handler block I added is never reached. The request always falls through to the default JSON‑RPC error:
{ "jsonrpc": "2.0", "id": "init-1", "error": { "code": -32601, "message": "Method not found" } }
Repo verification:
Screenshot attached shows server.js at repo root alongside package.json.
Git commit clearly contains the marker log and full handler structure.
Build log verification:
Clean build, no cached layers. Multiple COPY . /app steps show files copied into container.
Healthcheck passes (/ route responds).
Container logs never output the startup marker, proving running service is not reflecting latest code.
Questions
Why would Railway deploy show a clean build and healthcheck, but still run a previous version of the service code?
Is there any known issue with Nixpacks deployments ignoring updates to repository root files (like server.js)?
Beyond the UI “Clear cache” option, is there a way to force a guaranteed image rebuild (e.g. CLI flag or project‑level setting) to ensure deployed containers always reflect current repo commits?
Are there best practices to confirm deployed container content at runtime (e.g. log echo of build SHA)?
Artifacts
Curl test result (from Windows PowerShell):
{
"jsonrpc": "2.0",
"id": "init-1",
"error": { "code": -32601, "message": "Method not found" }
}
Deploy logs excerpt (Aug 18, 2025):
mcp-streamable-test listening on 8080 at /mcp
Raw body: …
method: 'initialize',
Parsed method: initialize
No v0.0.7 marker log present.
GitHub repo screenshot: shows server.js (v0.0.7) with marker log at project root.
Build logs: successful rebuild, healthcheck passed, but deployed service did not reflect code changes.
Goal
Understand why Railway is not serving the updated source code for this service even after clean builds and cache clears. Confirm if this is a platform issue or if additional deployment steps are needed on my side.
Ultimately, I need the deployed service to execute the current repo revision of server.js so JSON‑RPC initialize returns correctly and my n8n MCP integration testing can proceed.
Thanks in advance. I’ve had great support from Railway in the past and just want to make sure I’m aligned to recommended practices here - DC
6 Replies
11 days ago
Hey there! We've found the following might help you get unblocked faster:
If you find the answer from one of these, please let us know by solving the thread!
11 days ago
Hi DC, it's weird that you are facing this issue even after setting the required variables!
Btw, there were no screenshots acttached in your query, also please provide the GitHub repo & docker image URL that you are using!
11 days ago
Hey brother, good to hear from you. It is strange, in that the NO_CACHE=1 instantly resolved itself the issue on the mcpo server, and saw the same cache issue on builds once I began rebuilding the mcp the proper way, but the NO_CACHE=1 fixed it on the mcp server aa well, except for this. Chased it all afternoon and after I gave GTP-5 seven attempts, tapped-out and headed here.
May be more info that warranted, but I will attach a number of files and tell me if nay other particulars would be helpful.
GitHub repo: https://github.com/DC-AAIA/mcp-streamable-test
Please guide me to the Docker image UrL and I'll fetch it.
Attachments from the last test curl:
MCP_HTTP-1.JPG
MCP_Deploy-1.JPG
MCP_Build-1.txt
WPS-1.JPG
MCP_Variables.JPG
MCP_Settings-1.1.JPG
MCP_Setting-1.2.JPG
package.json
server.js.txt
Update, looks like the max number of attachments is 5. So let me know if you'd like me to try to attach the others in a separate response.
Thanks again for taking a look at this - DC
11 days ago
Can you try this:
Select the Railway-service which you want to update! Press Ctrl/Cmd + K and then type Deploy Latest Commit, & select it. That would deploy the fresh instance of your GitHub repo code.
11 days ago
Sure sounds like that would work. Will give it a try and let you know
As always, thanks for your help! DC
11 days ago
That worked! clashing, you are The Man! That's fantastic, Brother, thanks again.
From a deployment use case perspective, any idea on why the NO_CACHE=1 worked but only partially? And second, is this issue just picking on me, or is it something I need to start doing consistenly?
I thought this would put the mcpo server back online, but it must still have some type of mismatch on what it was expecting from mcp that GPT-5 expected would be resolved, but that troubleshooting will be for in the morning.
May be back looking for you again if that doesn't resolve itself fairly expediently.
Thanks - DC
Attachments
Status changed to Solved angelo-railway • 11 days ago