Skip to content

Commit b3d1f29

Browse files
committed
fix start sse server and add logs for access
1 parent 1672c3f commit b3d1f29

File tree

3 files changed

+72
-4
lines changed

3 files changed

+72
-4
lines changed

index.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
*/
77

88
import express, { Request, Response } from "express";
9+
import morgan from "morgan";
910
import { z } from "zod";
1011
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
1112
import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
@@ -422,6 +423,9 @@ const config: ElasticsearchConfig = {
422423
async function create_sse_server(server: any) {
423424
const app = express();
424425

426+
// Use morgan to log every request
427+
app.use(morgan("combined"));
428+
425429
const transports: {[sessionId: string]: SSEServerTransport} = {};
426430

427431
app.get("/sse", async (_: Request, res: Response) => {
@@ -443,8 +447,16 @@ async function create_sse_server(server: any) {
443447
}
444448
});
445449

446-
console.info("SSE server started on: ", process.env.SSE_ADDR);
447-
app.listen(process.env.SSE_ADDR);
450+
const sseAddr = process.env.SSE_ADDR || "127.0.0.1:3000";
451+
const [host, port] = sseAddr.split(":");
452+
if (!port) {
453+
console.error("Invalid SSE_ADDR format. Expected 'host:port'.");
454+
process.exit(1);
455+
}
456+
457+
app.listen(Number(port), host, () => {
458+
console.info(`SSE server started on: ${host}:${port}`);
459+
});
448460
}
449461

450462
async function main() {

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,9 @@
4040
"@elastic/elasticsearch": "^8.17.1",
4141
"@modelcontextprotocol/sdk": "1.9.0",
4242
"@types/express": "^5.0.1",
43-
"express": "^5.1.0"
43+
"@types/morgan": "^1.9.9",
44+
"express": "^5.1.0",
45+
"morgan": "^1.10.0"
4446
},
4547
"engines": {
4648
"node": ">=18"

yarn.lock

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,13 @@
127127
resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690"
128128
integrity sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==
129129

130+
"@types/morgan@^1.9.9":
131+
version "1.9.9"
132+
resolved "https://registry.yarnpkg.com/@types/morgan/-/morgan-1.9.9.tgz#d60dec3979e16c203a000159daa07d3fb7270d7f"
133+
integrity sha512-iRYSDKVaC6FkGSpEVVIvrRGw0DfJMiQzIn3qr2G5B3C//AWkulhXgaBd7tS9/J79GWSYMTHGs7PfI5b3Y8m+RQ==
134+
dependencies:
135+
"@types/node" "*"
136+
130137
"@types/node@*":
131138
version "22.14.1"
132139
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.14.1.tgz#53b54585cec81c21eee3697521e31312d6ca1e6f"
@@ -242,6 +249,13 @@ balanced-match@^1.0.0:
242249
resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
243250
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
244251

252+
basic-auth@~2.0.1:
253+
version "2.0.1"
254+
resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-2.0.1.tgz#b998279bf47ce38344b4f3cf916d4679bbf51e3a"
255+
integrity sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==
256+
dependencies:
257+
safe-buffer "5.1.2"
258+
245259
body-parser@^2.2.0:
246260
version "2.2.0"
247261
resolved "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz"
@@ -416,6 +430,13 @@ cross-spawn@^7.0.3:
416430
shebang-command "^2.0.0"
417431
which "^2.0.1"
418432

433+
434+
version "2.6.9"
435+
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
436+
integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
437+
dependencies:
438+
ms "2.0.0"
439+
419440
debug@^3.1.0:
420441
version "3.2.7"
421442
resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz"
@@ -435,7 +456,7 @@ debuglog@^1.0.1:
435456
resolved "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz"
436457
integrity sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==
437458

438-
[email protected], depd@^2.0.0:
459+
[email protected], depd@^2.0.0, depd@~2.0.0:
439460
version "2.0.0"
440461
resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz"
441462
integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
@@ -900,6 +921,22 @@ mkdirp@^0.5.1:
900921
dependencies:
901922
minimist "^1.2.6"
902923

924+
morgan@^1.10.0:
925+
version "1.10.0"
926+
resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.10.0.tgz#091778abc1fc47cd3509824653dae1faab6b17d7"
927+
integrity sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==
928+
dependencies:
929+
basic-auth "~2.0.1"
930+
debug "2.6.9"
931+
depd "~2.0.0"
932+
on-finished "~2.3.0"
933+
on-headers "~1.0.2"
934+
935+
936+
version "2.0.0"
937+
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
938+
integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
939+
903940
ms@^2.1.1, ms@^2.1.3:
904941
version "2.1.3"
905942
resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz"
@@ -962,6 +999,18 @@ on-finished@^2.4.1:
962999
dependencies:
9631000
ee-first "1.1.1"
9641001

1002+
on-finished@~2.3.0:
1003+
version "2.3.0"
1004+
resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
1005+
integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==
1006+
dependencies:
1007+
ee-first "1.1.1"
1008+
1009+
on-headers@~1.0.2:
1010+
version "1.0.2"
1011+
resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f"
1012+
integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==
1013+
9651014
once@^1.3.0, once@^1.3.1, once@^1.4.0:
9661015
version "1.4.0"
9671016
resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
@@ -1148,6 +1197,11 @@ run-parallel@^1.1.9:
11481197
dependencies:
11491198
queue-microtask "^1.2.2"
11501199

1200+
1201+
version "5.1.2"
1202+
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
1203+
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
1204+
11511205
11521206
version "5.2.1"
11531207
resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"

0 commit comments

Comments
 (0)