multica-ai/multica · error
create .cursor dir: %w
Error message
create .cursor dir: %w
What it means
Error "create .cursor dir: %w" thrown in multica-ai/multica.
Source
Thrown at server/internal/daemon/execenv/cursor_mcp.go:67
// have an explicit managed mcp_config saved. A nil/null mcp_config means "let
// Cursor behave normally", so no .cursor/mcp.json or CURSOR_DATA_DIR is created.
func prepareCursorMcpConfig(envRoot, workDir string, mcpConfig json.RawMessage, mcpAuthSource string, manifest *sidecarManifest) (string, error) {
if !hasManagedCursorMcpConfig(mcpConfig) {
return "", nil
}
if envRoot == "" {
return "", fmt.Errorf("env root is required for managed cursor mcp_config")
}
projectRoot := cursorProjectRoot(workDir)
servers, err := parseCursorManagedMcpServers(mcpConfig)
if err != nil {
return "", err
}
cursorDir := filepath.Join(projectRoot, ".cursor")
if err := recordMkdirAll(cursorDir, 0o755, manifest); err != nil {
return "", fmt.Errorf("create .cursor dir: %w", err)
}
configData, err := marshalCursorMcpConfig(servers)
if err != nil {
return "", err
}
if err := recordWriteFile(filepath.Join(cursorDir, "mcp.json"), configData, 0o600, manifest); err != nil {
if errors.Is(err, errPathPreExists) {
return "", fmt.Errorf("managed cursor mcp_config would overwrite existing .cursor/mcp.json")
}
return "", fmt.Errorf("write .cursor/mcp.json: %w", err)
}
cursorDataDir := filepath.Join(envRoot, "cursor-data")
projectDataDir := filepath.Join(cursorDataDir, "projects", cursorSlugifyPath(projectRoot))
if err := os.MkdirAll(projectDataDir, 0o700); err != nil {
return "", fmt.Errorf("create cursor project data dir: %w", err)
}
if err := removeCursorMcpAuthFile(projectDataDir); err != nil {View on GitHub (pinned to 2c0912b6ec)
Solutions
- Check permissions to create the .cursor directory.
When it happens
Trigger: Thrown at server/internal/daemon/execenv/cursor_mcp.go:67 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of multica-ai/multica@2c0912b6ec (2026-08-15).
Data as JSON: /api/errors/85a86fc9d1df487c.
Report an issue: GitHub.