Skip to content

Commit e7c2a77

Browse files
committed
mcp: clarify pre-safety empty selection vs safety rejection; trim URLs in isValidUrl to avoid whitespace false negatives
1 parent 0ac1cff commit e7c2a77

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

src/lib/server/textGeneration/mcp/runMcpFlow.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,12 @@ export async function* runMcpFlow({
100100
// ignore selection merge errors and proceed with env servers
101101
}
102102

103+
// If selection/merge yielded no servers, bail early with clearer log
104+
if (servers.length === 0) {
105+
console.warn("[mcp] no MCP servers selected after merge/name filter");
106+
return false;
107+
}
108+
103109
// Enforce server-side safety (public HTTPS only, no private ranges)
104110
{
105111
const before = servers.slice();
@@ -121,7 +127,7 @@ export async function* runMcpFlow({
121127
} catch {}
122128
}
123129
if (servers.length === 0) {
124-
console.warn("[mcp] all selected servers rejected by URL safety guard");
130+
console.warn("[mcp] all selected MCP servers rejected by URL safety guard");
125131
return false;
126132
}
127133

src/lib/server/urlSafety.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Shared server-side URL safety helper (exact behavior preserved)
22
export function isValidUrl(urlString: string): boolean {
33
try {
4-
const url = new URL(urlString);
4+
const url = new URL(urlString.trim());
55
// Only allow HTTPS protocol
66
if (url.protocol !== "https:") {
77
return false;

0 commit comments

Comments
 (0)