From 353d6b549bfbb0c64f995350a95674b288c42075 Mon Sep 17 00:00:00 2001 From: Simon Knott Date: Thu, 27 Mar 2025 09:52:35 +0100 Subject: [PATCH 01/13] fix: clean up previous transport processes --- client/src/components/Sidebar.tsx | 14 ++++++++++++-- server/src/index.ts | 5 ++++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/client/src/components/Sidebar.tsx b/client/src/components/Sidebar.tsx index 4f60a77..6c9f137 100644 --- a/client/src/components/Sidebar.tsx +++ b/client/src/components/Sidebar.tsx @@ -8,6 +8,7 @@ import { Github, Eye, EyeOff, + RotateCcw, } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; @@ -286,8 +287,17 @@ const Sidebar = ({
diff --git a/server/src/index.ts b/server/src/index.ts index 2a4fe65..d4bfc6a 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -12,6 +12,7 @@ import { StdioClientTransport, getDefaultEnvironment, } from "@modelcontextprotocol/sdk/client/stdio.js"; +import { Transport } from "@modelcontextprotocol/sdk/shared/transport.js"; import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js"; import express from "express"; import { findActualExecutable } from "spawn-rx"; @@ -98,12 +99,14 @@ const createTransport = async (req: express.Request) => { } }; +let backingServerTransport: Transport | undefined; + app.get("/sse", async (req, res) => { try { console.log("New SSE connection"); - let backingServerTransport; try { + await backingServerTransport?.close(); backingServerTransport = await createTransport(req); } catch (error) { if (error instanceof SseError && error.code === 401) { From da0c855ef5eb88996adb09d25b244a1824c12f9c Mon Sep 17 00:00:00 2001 From: Simon Knott Date: Fri, 28 Mar 2025 09:45:17 +0100 Subject: [PATCH 02/13] adapt title --- client/src/components/Sidebar.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/components/Sidebar.tsx b/client/src/components/Sidebar.tsx index 6c9f137..6e59084 100644 --- a/client/src/components/Sidebar.tsx +++ b/client/src/components/Sidebar.tsx @@ -290,7 +290,7 @@ const Sidebar = ({ {connectionStatus === "connected" ? ( <> - Restart + {transportType === 'stdio' ? 'Restart' : 'Reconnect'} ) : ( <> From 1b754f52ca2df7b7459fc35aeab08aceb0b814a9 Mon Sep 17 00:00:00 2001 From: cliffhall Date: Fri, 28 Mar 2025 11:59:21 -0400 Subject: [PATCH 03/13] This fixes #214 where when the inspector is started, it can report that the inspector is up, when in fact it isn't because the address is already in use. It catches this condition, as well as the condition where the proxy server port is in use, reports it, and exits. * In bin/cli.js - in the delay function, have the setTimeout return a true value. - try the server's spawnPromise call and within the try block, use Promise.race to get the return value of the first promise to resolve. If the server is up, it will not resolve and the 2 second delay will resolve with true, telling us the server is ok. Any error will have been reported by the server startup process, so we will not pile on with more output in the catch block. - If the server started ok, then we will await the spawnPromise call for starting the client. If the client fails to start it will report and exit, otherwise we are done and both servers are running and have reported as much. If an error is caught and it isn't SIGINT or if process.env.DEBUG is true then the error will be thrown before exiting. * In client/bin/cli.js - add a "listening" handler to the server, logging that the MCP inspector is up at the given port - Add an "error" handler to the server that reports that the client port is in use if the error message includes "EADDRINUSE", otherwise throw the error so the entire contents can be seen. * In server/src/index.ts - add a "listening" handler to the server, logging that the Proxy server is up at the given port - Add an "error" handler to the server that reports that the server port is in use if the error message includes "EADDRINUSE", otherwise throw the error so the entire contents can be seen. * In package.json - in preview script - add --port 5173 to start the client on the proper port. This was useful in getting an instance of the client running before trying the start script. otherwise it starts on 4173 --- bin/cli.js | 75 +++++++++++++++++++++++---------------------- client/bin/cli.js | 16 +++++++++- client/package.json | 2 +- server/src/index.ts | 25 ++++++++------- 4 files changed, 69 insertions(+), 49 deletions(-) diff --git a/bin/cli.js b/bin/cli.js index 1b744ce..d559688 100755 --- a/bin/cli.js +++ b/bin/cli.js @@ -7,7 +7,7 @@ import { fileURLToPath } from "url"; const __dirname = dirname(fileURLToPath(import.meta.url)); function delay(ms) { - return new Promise((resolve) => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms, true)); } async function main() { @@ -73,42 +73,45 @@ async function main() { cancelled = true; abort.abort(); }); - - const server = spawnPromise( - "node", - [ - inspectorServerPath, - ...(command ? [`--env`, command] : []), - ...(mcpServerArgs ? [`--args=${mcpServerArgs.join(" ")}`] : []), - ], - { - env: { - ...process.env, - PORT: SERVER_PORT, - MCP_ENV_VARS: JSON.stringify(envVars), - }, - signal: abort.signal, - echoOutput: true, - }, - ); - - const client = spawnPromise("node", [inspectorClientPath], { - env: { ...process.env, PORT: CLIENT_PORT }, - signal: abort.signal, - echoOutput: true, - }); - - // Make sure our server/client didn't immediately fail - await Promise.any([server, client, delay(2 * 1000)]); - const portParam = SERVER_PORT === "3000" ? "" : `?proxyPort=${SERVER_PORT}`; - console.log( - `\nšŸ” MCP Inspector is up and running at http://127.0.0.1:${CLIENT_PORT}${portParam} šŸš€`, - ); - + let server, serverOk; try { - await Promise.any([server, client]); - } catch (e) { - if (!cancelled || process.env.DEBUG) throw e; + + server = spawnPromise( + "node", + [ + inspectorServerPath, + ...(command ? [`--env`, command] : []), + ...(mcpServerArgs ? [`--args=${mcpServerArgs.join(" ")}`] : []), + ], + { + env: { + ...process.env, + PORT: SERVER_PORT, + MCP_ENV_VARS: JSON.stringify(envVars), + }, + signal: abort.signal, + echoOutput: true, + }, + ) + + // Make sure server started before starting client + serverOk = await Promise.race([server, delay(2 * 1000)]); + + } catch(error) {} + + if (serverOk) { + try { + + await spawnPromise("node", [inspectorClientPath], { + env: { ...process.env, PORT: CLIENT_PORT }, + signal: abort.signal, + echoOutput: true, + }); + + } catch (e) { + if (!cancelled || process.env.DEBUG) throw e; + } + } return 0; diff --git a/client/bin/cli.js b/client/bin/cli.js index 7dc93ea..9dbe796 100755 --- a/client/bin/cli.js +++ b/client/bin/cli.js @@ -16,4 +16,18 @@ const server = http.createServer((request, response) => { }); const port = process.env.PORT || 5173; -server.listen(port, () => {}); +server.on("listening", () => { + console.log( + `šŸ” MCP Inspector is up and running at http://127.0.0.1:${port} šŸš€`, + ); +}) +server.on("error", (err) => { + if (err.message.includes(`EADDRINUSE`)) { + console.error( + `āŒ MCP Inspector PORT IS IN USE at http://127.0.0.1:${port} āŒ `, + ); + } else { + throw err; + } +}) +server.listen(port); diff --git a/client/package.json b/client/package.json index 9eff88c..c268c33 100644 --- a/client/package.json +++ b/client/package.json @@ -18,7 +18,7 @@ "dev": "vite", "build": "tsc -b && vite build", "lint": "eslint .", - "preview": "vite preview", + "preview": "vite preview --port 5173", "test": "jest --config jest.config.cjs", "test:watch": "jest --config jest.config.cjs --watch" }, diff --git a/server/src/index.ts b/server/src/index.ts index 2a4fe65..7e45de4 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -184,15 +184,18 @@ app.get("/config", (req, res) => { const PORT = process.env.PORT || 3000; -try { - const server = app.listen(PORT); - - server.on("listening", () => { - const addr = server.address(); - const port = typeof addr === "string" ? addr : addr?.port; - console.log(`Proxy server listening on port ${port}`); - }); -} catch (error) { - console.error("Failed to start server:", error); +const server = app.listen(PORT); +server.on("listening", () => { + console.log(`āš™ļø Proxy server listening on port ${PORT}`); +}); +server.on("error", (err) => { + if (err.message.includes(`EADDRINUSE`)) { + console.error( + `āŒ Proxy Server PORT IS IN USE at port ${PORT} āŒ `, + ); + } else { + console.error(err.message); + } process.exit(1); -} +}) + From 054741be03bbade7ef0bd09012bd2e8c3f3b2628 Mon Sep 17 00:00:00 2001 From: cliffhall Date: Sat, 29 Mar 2025 12:36:03 -0400 Subject: [PATCH 04/13] Run prettier. --- bin/cli.js | 9 ++------- client/bin/cli.js | 4 ++-- server/src/index.ts | 7 ++----- 3 files changed, 6 insertions(+), 14 deletions(-) diff --git a/bin/cli.js b/bin/cli.js index d559688..8c5e526 100755 --- a/bin/cli.js +++ b/bin/cli.js @@ -75,7 +75,6 @@ async function main() { }); let server, serverOk; try { - server = spawnPromise( "node", [ @@ -92,26 +91,22 @@ async function main() { signal: abort.signal, echoOutput: true, }, - ) + ); // Make sure server started before starting client serverOk = await Promise.race([server, delay(2 * 1000)]); - - } catch(error) {} + } catch (error) {} if (serverOk) { try { - await spawnPromise("node", [inspectorClientPath], { env: { ...process.env, PORT: CLIENT_PORT }, signal: abort.signal, echoOutput: true, }); - } catch (e) { if (!cancelled || process.env.DEBUG) throw e; } - } return 0; diff --git a/client/bin/cli.js b/client/bin/cli.js index 9dbe796..95b6429 100755 --- a/client/bin/cli.js +++ b/client/bin/cli.js @@ -20,7 +20,7 @@ server.on("listening", () => { console.log( `šŸ” MCP Inspector is up and running at http://127.0.0.1:${port} šŸš€`, ); -}) +}); server.on("error", (err) => { if (err.message.includes(`EADDRINUSE`)) { console.error( @@ -29,5 +29,5 @@ server.on("error", (err) => { } else { throw err; } -}) +}); server.listen(port); diff --git a/server/src/index.ts b/server/src/index.ts index 7e45de4..6c66de0 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -190,12 +190,9 @@ server.on("listening", () => { }); server.on("error", (err) => { if (err.message.includes(`EADDRINUSE`)) { - console.error( - `āŒ Proxy Server PORT IS IN USE at port ${PORT} āŒ `, - ); + console.error(`āŒ Proxy Server PORT IS IN USE at port ${PORT} āŒ `); } else { console.error(err.message); } process.exit(1); -}) - +}); From da9dd097655086180588cbfa0e79cba2dcf1b866 Mon Sep 17 00:00:00 2001 From: Abdelkader Boudih Date: Mon, 31 Mar 2025 00:31:28 +0000 Subject: [PATCH 05/13] refactor: Update default ports for MCPI client and MPCP server Changes the default ports used by the MCP Inspector client UI and the MCP Proxy server to avoid conflicts with common development ports and provide a memorable mnemonic based on T9 mapping. --- CONTRIBUTING.md | 2 +- README.md | 2 +- bin/cli.js | 6 +++--- client/bin/cli.js | 2 +- client/src/App.tsx | 2 +- server/src/index.ts | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ed28e9d..72502f9 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,7 +7,7 @@ Thanks for your interest in contributing! This guide explains how to get involve 1. Fork the repository and clone it locally 2. Install dependencies with `npm install` 3. Run `npm run dev` to start both client and server in development mode -4. Use the web UI at http://127.0.0.1:5173 to interact with the inspector +4. Use the web UI at http://127.0.0.1:6274 to interact with the inspector ## Development Process & Pull Requests diff --git a/README.md b/README.md index 5fe3693..0192038 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ npx @modelcontextprotocol/inspector -e KEY=value -e KEY2=$VALUE2 node build/inde npx @modelcontextprotocol/inspector -e KEY=$VALUE -- node build/index.js -e server-flag ``` -The inspector runs both a client UI (default port 5173) and an MCP proxy server (default port 3000). Open the client UI in your browser to use the inspector. You can customize the ports if needed: +The inspector runs both an MCP Inspector (MCPI) client UI (default port 6274) and an MCP Proxy (MPCP) server (default port 6727). Open the MCPI client UI in your browser to use the inspector. (These ports are derived from the T9 dialpad mapping of MCPI and MPCP respectively, as a mnemonic). You can customize the ports if needed: ```bash CLIENT_PORT=8080 SERVER_PORT=9000 npx @modelcontextprotocol/inspector node build/index.js diff --git a/bin/cli.js b/bin/cli.js index 1b744ce..b495f7b 100755 --- a/bin/cli.js +++ b/bin/cli.js @@ -61,8 +61,8 @@ async function main() { "cli.js", ); - const CLIENT_PORT = process.env.CLIENT_PORT ?? "5173"; - const SERVER_PORT = process.env.SERVER_PORT ?? "3000"; + const CLIENT_PORT = process.env.CLIENT_PORT ?? "6274"; + const SERVER_PORT = process.env.SERVER_PORT ?? "6727"; console.log("Starting MCP inspector..."); @@ -100,7 +100,7 @@ async function main() { // Make sure our server/client didn't immediately fail await Promise.any([server, client, delay(2 * 1000)]); - const portParam = SERVER_PORT === "3000" ? "" : `?proxyPort=${SERVER_PORT}`; + const portParam = SERVER_PORT === "6727" ? "" : `?proxyPort=${SERVER_PORT}`; console.log( `\nšŸ” MCP Inspector is up and running at http://127.0.0.1:${CLIENT_PORT}${portParam} šŸš€`, ); diff --git a/client/bin/cli.js b/client/bin/cli.js index 7dc93ea..81b7bd1 100755 --- a/client/bin/cli.js +++ b/client/bin/cli.js @@ -15,5 +15,5 @@ const server = http.createServer((request, response) => { }); }); -const port = process.env.PORT || 5173; +const port = process.env.PORT || 6274; server.listen(port, () => {}); diff --git a/client/src/App.tsx b/client/src/App.tsx index c29ef71..f65bdc2 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -49,7 +49,7 @@ import { DEFAULT_INSPECTOR_CONFIG } from "./lib/constants"; import { InspectorConfig } from "./lib/configurationTypes"; const params = new URLSearchParams(window.location.search); -const PROXY_PORT = params.get("proxyPort") ?? "3000"; +const PROXY_PORT = params.get("proxyPort") ?? "6727"; const PROXY_SERVER_URL = `http://${window.location.hostname}:${PROXY_PORT}`; const CONFIG_LOCAL_STORAGE_KEY = "inspectorConfig_v1"; diff --git a/server/src/index.ts b/server/src/index.ts index 2a4fe65..7a527fc 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -182,7 +182,7 @@ app.get("/config", (req, res) => { } }); -const PORT = process.env.PORT || 3000; +const PORT = process.env.PORT || 6727; try { const server = app.listen(PORT); From 7b055b6b9a80e8dc2eda4b1b0a73f48353eb97b2 Mon Sep 17 00:00:00 2001 From: katopz Date: Mon, 31 Mar 2025 18:29:09 +0900 Subject: [PATCH 06/13] fix: prop.type not accept integer --- client/src/components/ToolsTab.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/src/components/ToolsTab.tsx b/client/src/components/ToolsTab.tsx index eb91c98..26f5b3b 100644 --- a/client/src/components/ToolsTab.tsx +++ b/client/src/components/ToolsTab.tsx @@ -226,7 +226,7 @@ const ToolsTab = ({
) : ( Date: Mon, 31 Mar 2025 18:10:16 +0200 Subject: [PATCH 07/13] fix prettier --- client/src/components/Sidebar.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/components/Sidebar.tsx b/client/src/components/Sidebar.tsx index 90471d5..33e88a7 100644 --- a/client/src/components/Sidebar.tsx +++ b/client/src/components/Sidebar.tsx @@ -379,7 +379,7 @@ const Sidebar = ({ {connectionStatus === "connected" ? ( <> - {transportType === 'stdio' ? 'Restart' : 'Reconnect'} + {transportType === "stdio" ? "Restart" : "Reconnect"} ) : ( <> From 83ceefca790fe27cc1f173ab0e30a0f4364d5a23 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 31 Mar 2025 16:30:35 +0000 Subject: [PATCH 08/13] Bump vite in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). Updates `vite` from 5.4.12 to 5.4.15 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.15/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.15/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 448edd6..c891d5c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10777,9 +10777,9 @@ } }, "node_modules/vite": { - "version": "5.4.12", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.12.tgz", - "integrity": "sha512-KwUaKB27TvWwDJr1GjjWthLMATbGEbeWYZIbGZ5qFIsgPP3vWzLu4cVooqhm5/Z2SPDUMjyPVjTztm5tYKwQxA==", + "version": "5.4.15", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.15.tgz", + "integrity": "sha512-6ANcZRivqL/4WtwPGTKNaosuNJr5tWiftOC7liM7G9+rMb8+oeJeyzymDu4rTN93seySBmbjSfsS3Vzr19KNtA==", "dev": true, "license": "MIT", "dependencies": { From 80f5ab11369cdabfc4533f016b2625e6cb9420a3 Mon Sep 17 00:00:00 2001 From: Abdelkader Boudih Date: Mon, 31 Mar 2025 18:28:40 +0000 Subject: [PATCH 09/13] fix: typo --- README.md | 2 +- bin/cli.js | 4 ++-- client/src/App.tsx | 2 +- server/src/index.ts | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 0192038..b0e18de 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ npx @modelcontextprotocol/inspector -e KEY=value -e KEY2=$VALUE2 node build/inde npx @modelcontextprotocol/inspector -e KEY=$VALUE -- node build/index.js -e server-flag ``` -The inspector runs both an MCP Inspector (MCPI) client UI (default port 6274) and an MCP Proxy (MPCP) server (default port 6727). Open the MCPI client UI in your browser to use the inspector. (These ports are derived from the T9 dialpad mapping of MCPI and MPCP respectively, as a mnemonic). You can customize the ports if needed: +The inspector runs both an MCP Inspector (MCPI) client UI (default port 6274) and an MCP Proxy (MCPP) server (default port 6277). Open the MCPI client UI in your browser to use the inspector. (These ports are derived from the T9 dialpad mapping of MCPI and MCPP respectively, as a mnemonic). You can customize the ports if needed: ```bash CLIENT_PORT=8080 SERVER_PORT=9000 npx @modelcontextprotocol/inspector node build/index.js diff --git a/bin/cli.js b/bin/cli.js index b495f7b..460ce58 100755 --- a/bin/cli.js +++ b/bin/cli.js @@ -62,7 +62,7 @@ async function main() { ); const CLIENT_PORT = process.env.CLIENT_PORT ?? "6274"; - const SERVER_PORT = process.env.SERVER_PORT ?? "6727"; + const SERVER_PORT = process.env.SERVER_PORT ?? "6277"; console.log("Starting MCP inspector..."); @@ -100,7 +100,7 @@ async function main() { // Make sure our server/client didn't immediately fail await Promise.any([server, client, delay(2 * 1000)]); - const portParam = SERVER_PORT === "6727" ? "" : `?proxyPort=${SERVER_PORT}`; + const portParam = SERVER_PORT === "6277" ? "" : `?proxyPort=${SERVER_PORT}`; console.log( `\nšŸ” MCP Inspector is up and running at http://127.0.0.1:${CLIENT_PORT}${portParam} šŸš€`, ); diff --git a/client/src/App.tsx b/client/src/App.tsx index f65bdc2..23c508f 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -49,7 +49,7 @@ import { DEFAULT_INSPECTOR_CONFIG } from "./lib/constants"; import { InspectorConfig } from "./lib/configurationTypes"; const params = new URLSearchParams(window.location.search); -const PROXY_PORT = params.get("proxyPort") ?? "6727"; +const PROXY_PORT = params.get("proxyPort") ?? "6277"; const PROXY_SERVER_URL = `http://${window.location.hostname}:${PROXY_PORT}`; const CONFIG_LOCAL_STORAGE_KEY = "inspectorConfig_v1"; diff --git a/server/src/index.ts b/server/src/index.ts index 7a527fc..fcb8295 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -182,7 +182,7 @@ app.get("/config", (req, res) => { } }); -const PORT = process.env.PORT || 6727; +const PORT = process.env.PORT || 6277; try { const server = app.listen(PORT); From b99cf276ae91db8ee135a443c04b673e608a3b65 Mon Sep 17 00:00:00 2001 From: Abdelkader Boudih Date: Mon, 31 Mar 2025 18:34:12 +0000 Subject: [PATCH 10/13] fix: linting --- bin/cli.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/cli.js b/bin/cli.js index ca1958a..35edf0e 100755 --- a/bin/cli.js +++ b/bin/cli.js @@ -117,4 +117,4 @@ main() .catch((e) => { console.error(e); process.exit(1); - }); \ No newline at end of file + }); From d1746f53a4d5bc5d9f9bba0ae248e33512dd4660 Mon Sep 17 00:00:00 2001 From: Abdelkader Boudih Date: Mon, 31 Mar 2025 20:11:40 +0000 Subject: [PATCH 11/13] Update package.json --- client/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/package.json b/client/package.json index c268c33..eb0091f 100644 --- a/client/package.json +++ b/client/package.json @@ -18,7 +18,7 @@ "dev": "vite", "build": "tsc -b && vite build", "lint": "eslint .", - "preview": "vite preview --port 5173", + "preview": "vite preview --port 6274", "test": "jest --config jest.config.cjs", "test:watch": "jest --config jest.config.cjs --watch" }, From 7dc2c6fb58ccd2cd12bc1e7f8cc96b164032642f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 31 Mar 2025 20:38:18 +0000 Subject: [PATCH 12/13] Bump vite in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). Updates `vite` from 5.4.15 to 5.4.16 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.16/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.16/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c891d5c..feb893f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10777,9 +10777,9 @@ } }, "node_modules/vite": { - "version": "5.4.15", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.15.tgz", - "integrity": "sha512-6ANcZRivqL/4WtwPGTKNaosuNJr5tWiftOC7liM7G9+rMb8+oeJeyzymDu4rTN93seySBmbjSfsS3Vzr19KNtA==", + "version": "5.4.16", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.16.tgz", + "integrity": "sha512-Y5gnfp4NemVfgOTDQAunSD4346fal44L9mszGGY/e+qxsRT5y1sMlS/8tiQ8AFAp+MFgYNSINdfEchJiPm41vQ==", "dev": true, "license": "MIT", "dependencies": { From 2ee0a53e360ec25c487dd2d952c7d98ed44429a6 Mon Sep 17 00:00:00 2001 From: katopz Date: Tue, 1 Apr 2025 09:27:24 +0900 Subject: [PATCH 13/13] fix: prettier --- client/src/components/ToolsTab.tsx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/client/src/components/ToolsTab.tsx b/client/src/components/ToolsTab.tsx index 26f5b3b..d9074c3 100644 --- a/client/src/components/ToolsTab.tsx +++ b/client/src/components/ToolsTab.tsx @@ -226,7 +226,11 @@ const ToolsTab = ({
) : (