From 0674ed7a1c7ce280263e45985632be4db81a4e43 Mon Sep 17 00:00:00 2001 From: Radek Piekarz Date: Wed, 19 Mar 2025 15:34:24 +0100 Subject: [PATCH 1/5] Update mcp extension - Fix env issues - Initial commit --- extensions/mcp/CHANGELOG.md | 5 ++++- extensions/mcp/package.json | 3 +++ extensions/mcp/src/getProcessedClients.ts | 18 ++++++++++++++++++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/extensions/mcp/CHANGELOG.md b/extensions/mcp/CHANGELOG.md index d83f08e2bc2..ac7432ae926 100644 --- a/extensions/mcp/CHANGELOG.md +++ b/extensions/mcp/CHANGELOG.md @@ -1,6 +1,9 @@ # Model Context Protocol Changelog -## [Initial Version] - {PR_MERGE_DATE} +## [Fix env issues] - {PR_MERGE_DATE} +* Fix issue caused by passing `env` in `mcp-config.json` + +## [Initial Version] - 13.03.2025 Introducing the Model Context Protocol integration for Raycast. diff --git a/extensions/mcp/package.json b/extensions/mcp/package.json index 72343246a30..4c669b47df5 100644 --- a/extensions/mcp/package.json +++ b/extensions/mcp/package.json @@ -5,6 +5,9 @@ "description": "Interact with the Model Context Protocol (MCP) in Raycast AI", "icon": "mcp-icon.png", "author": "EvanZhouDev", + "contributors": [ + "radzio" + ], "categories": [ "Developer Tools", "Productivity" diff --git a/extensions/mcp/src/getProcessedClients.ts b/extensions/mcp/src/getProcessedClients.ts index 3e5872f1b35..0a0d1f9b1e4 100644 --- a/extensions/mcp/src/getProcessedClients.ts +++ b/extensions/mcp/src/getProcessedClients.ts @@ -6,6 +6,24 @@ import { Client } from "@modelcontextprotocol/sdk/client/index.js"; import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js"; export default async function (clientName?: string) { + function initEnv() { + const shell = os.userInfo().shell || "/bin/sh"; + const command = `LC_ALL=en_US.UTF-8 ${shell} -L -i -c 'printenv'`; + try { + const variables = execSync(command, { encoding: "utf8" }); + variables.split("\n").forEach((line) => { + const [key, value] = line.split("="); + if (key && value) { + process.env[key] = value; + } + }); + } catch (error) { + console.error("Error retrieving shell PATH:", error); + return process.env.PATH || ""; + } + } + initEnv(); + function getUserShellPath() { const shell = os.userInfo().shell || "/bin/sh"; const command = `${shell} -l -i -c 'echo $PATH'`; From 47fc39208f257f7121c077bc72e9dce2ffe03439 Mon Sep 17 00:00:00 2001 From: Radek Piekarz Date: Wed, 19 Mar 2025 16:22:30 +0100 Subject: [PATCH 2/5] Update extensions/mcp/src/getProcessedClients.ts Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- extensions/mcp/src/getProcessedClients.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extensions/mcp/src/getProcessedClients.ts b/extensions/mcp/src/getProcessedClients.ts index 0a0d1f9b1e4..f7407b3375c 100644 --- a/extensions/mcp/src/getProcessedClients.ts +++ b/extensions/mcp/src/getProcessedClients.ts @@ -19,7 +19,7 @@ export default async function (clientName?: string) { }); } catch (error) { console.error("Error retrieving shell PATH:", error); - return process.env.PATH || ""; + process.env.PATH = process.env.PATH || ""; } } initEnv(); From 3553f5642986ad03739732a08479f6a7b15da280 Mon Sep 17 00:00:00 2001 From: Radek Piekarz Date: Wed, 19 Mar 2025 16:22:42 +0100 Subject: [PATCH 3/5] Update extensions/mcp/CHANGELOG.md Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- extensions/mcp/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extensions/mcp/CHANGELOG.md b/extensions/mcp/CHANGELOG.md index ac7432ae926..8c569ec343b 100644 --- a/extensions/mcp/CHANGELOG.md +++ b/extensions/mcp/CHANGELOG.md @@ -3,7 +3,7 @@ ## [Fix env issues] - {PR_MERGE_DATE} * Fix issue caused by passing `env` in `mcp-config.json` -## [Initial Version] - 13.03.2025 +## [Initial Version] - {PR_MERGE_DATE} Introducing the Model Context Protocol integration for Raycast. From 90f8a88eb870d63d26ff1c4023e94b647f65ac38 Mon Sep 17 00:00:00 2001 From: Radek Piekarz Date: Wed, 19 Mar 2025 16:26:16 +0100 Subject: [PATCH 4/5] Remove interactive flag from shell command --- extensions/mcp/src/getProcessedClients.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extensions/mcp/src/getProcessedClients.ts b/extensions/mcp/src/getProcessedClients.ts index f7407b3375c..90f1d93f31b 100644 --- a/extensions/mcp/src/getProcessedClients.ts +++ b/extensions/mcp/src/getProcessedClients.ts @@ -26,7 +26,7 @@ export default async function (clientName?: string) { function getUserShellPath() { const shell = os.userInfo().shell || "/bin/sh"; - const command = `${shell} -l -i -c 'echo $PATH'`; + const command = `${shell} -l -c 'echo $PATH'`; try { const path = execSync(command).toString().trim(); From d6d8081d628cebc5f0abcd33d97b02742a574bf9 Mon Sep 17 00:00:00 2001 From: raycastbot Date: Mon, 24 Mar 2025 11:17:21 +0000 Subject: [PATCH 5/5] Update CHANGELOG.md and optimise images --- extensions/mcp/CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/extensions/mcp/CHANGELOG.md b/extensions/mcp/CHANGELOG.md index 8c569ec343b..0e153d86e08 100644 --- a/extensions/mcp/CHANGELOG.md +++ b/extensions/mcp/CHANGELOG.md @@ -1,9 +1,9 @@ # Model Context Protocol Changelog -## [Fix env issues] - {PR_MERGE_DATE} +## [Fix env issues] - 2025-03-24 * Fix issue caused by passing `env` in `mcp-config.json` -## [Initial Version] - {PR_MERGE_DATE} +## [Initial Version] - 2025-03-24 Introducing the Model Context Protocol integration for Raycast.