fix(mcp): validate workspace before resolving relative env_file
This commit is contained in:
parent
6aade43236
commit
16a3b96dde
1 changed files with 11 additions and 0 deletions
|
|
@ -161,6 +161,17 @@ func (m *Manager) LoadFromMCPConfig(ctx context.Context, mcpCfg config.MCPConfig
|
||||||
|
|
||||||
// Resolve relative envFile paths relative to workspace
|
// Resolve relative envFile paths relative to workspace
|
||||||
if serverCfg.EnvFile != "" && !filepath.IsAbs(serverCfg.EnvFile) {
|
if serverCfg.EnvFile != "" && !filepath.IsAbs(serverCfg.EnvFile) {
|
||||||
|
if workspace == "" {
|
||||||
|
err := fmt.Errorf("workspace path is empty while resolving relative envFile %q for server %s", serverCfg.EnvFile, name)
|
||||||
|
logger.ErrorCF("mcp", "Invalid MCP server configuration",
|
||||||
|
map[string]interface{}{
|
||||||
|
"server": name,
|
||||||
|
"env_file": serverCfg.EnvFile,
|
||||||
|
"error": err.Error(),
|
||||||
|
})
|
||||||
|
errs <- err
|
||||||
|
return
|
||||||
|
}
|
||||||
serverCfg.EnvFile = filepath.Join(workspace, serverCfg.EnvFile)
|
serverCfg.EnvFile = filepath.Join(workspace, serverCfg.EnvFile)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue