feat: scaffold manager server with docker lifecycle and bearer-auth proxy
Lays the groundwork for remote-mcp-manager: an Express server that runs installed MCP containers via dockerode (forcing host/port env vars, no published ports, shared bridge network) and reverse-proxies /mcp/:slug requests behind a per-installation Bearer token, resolving the upstream target by inspecting the container's network IP rather than relying on container-name DNS. Validated end-to-end against a real cloned MCP repo (nixpacks build + container run + authenticated proxy roundtrip); installations are still a hardcoded in-memory list, replaced by SQLite in the next slice. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
23
apps/server/package.json
Normal file
23
apps/server/package.json
Normal file
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"name": "@remote-mcp-manager/server",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "tsx src/index.ts",
|
||||
"build": "tsc -p tsconfig.json",
|
||||
"start": "node dist/index.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"dockerode": "4.0.9",
|
||||
"express": "4.21.2",
|
||||
"http-proxy": "1.18.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/dockerode": "3.3.42",
|
||||
"@types/express": "4.17.23",
|
||||
"@types/http-proxy": "1.17.16",
|
||||
"@types/node": "24.9.1",
|
||||
"tsx": "4.20.6",
|
||||
"typescript": "5.9.3"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user