- Extract duplicated URL generation code into getClientUrl() helper function in start.js - Replace all 127.0.0.1 references with localhost for consistency across codebase - Update server to respect HOST environment variable for URL generation - Remove 127.0.0.1 from default allowed origins in CORS configuration - Update documentation to use localhost instead of 127.0.0.1 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
58 lines
1.4 KiB
JavaScript
Executable file
58 lines
1.4 KiB
JavaScript
Executable file
#!/usr/bin/env node
|
|
|
|
import { join, dirname } from "path";
|
|
import { fileURLToPath } from "url";
|
|
import handler from "serve-handler";
|
|
import http from "http";
|
|
|
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
const distPath = join(__dirname, "../dist");
|
|
|
|
const server = http.createServer((request, response) => {
|
|
const handlerOptions = {
|
|
public: distPath,
|
|
rewrites: [{ source: "/**", destination: "/index.html" }],
|
|
headers: [
|
|
{
|
|
// Ensure index.html is never cached
|
|
source: "index.html",
|
|
headers: [
|
|
{
|
|
key: "Cache-Control",
|
|
value: "no-cache, no-store, max-age=0",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
// Allow long-term caching for hashed assets
|
|
source: "assets/**",
|
|
headers: [
|
|
{
|
|
key: "Cache-Control",
|
|
value: "public, max-age=31536000, immutable",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
};
|
|
|
|
return handler(request, response, handlerOptions);
|
|
});
|
|
|
|
const port = process.env.PORT || 6274;
|
|
const host = process.env.HOST || "localhost";
|
|
server.on("listening", () => {
|
|
console.log(
|
|
`🔍 MCP Inspector is up and running at http://${host}:${port} 🚀`,
|
|
);
|
|
});
|
|
server.on("error", (err) => {
|
|
if (err.message.includes(`EADDRINUSE`)) {
|
|
console.error(
|
|
`❌ MCP Inspector PORT IS IN USE at http://${host}:${port} ❌ `,
|
|
);
|
|
} else {
|
|
throw err;
|
|
}
|
|
});
|
|
server.listen(port, host);
|