multica-ai/multica · error
mcp server name must not be empty
Error message
mcp server name must not be empty
What it means
Error "mcp server name must not be empty" thrown in multica-ai/multica.
Source
Thrown at server/internal/daemon/execenv/cursor_mcp.go:223
func hasManagedCursorMcpConfig(raw json.RawMessage) bool {
trimmed := bytes.TrimSpace(raw)
return len(trimmed) > 0 && !bytes.Equal(trimmed, []byte("null"))
}
func parseCursorManagedMcpServers(raw json.RawMessage) (map[string]json.RawMessage, error) {
var cfg struct {
McpServers map[string]json.RawMessage `json:"mcpServers"`
}
if err := json.Unmarshal(raw, &cfg); err != nil {
return nil, fmt.Errorf("parse mcp_config json: %w", err)
}
if cfg.McpServers == nil {
return map[string]json.RawMessage{}, nil
}
for name, server := range cfg.McpServers {
if strings.TrimSpace(name) == "" {
return nil, fmt.Errorf("mcp server name must not be empty")
}
var obj map[string]any
if err := json.Unmarshal(server, &obj); err != nil {
return nil, fmt.Errorf("mcp_servers.%s: %w", name, err)
}
if obj == nil {
return nil, fmt.Errorf("mcp_servers.%s must be a JSON object", name)
}
}
return cfg.McpServers, nil
}
func marshalCursorMcpConfig(servers map[string]json.RawMessage) ([]byte, error) {
if servers == nil {
servers = map[string]json.RawMessage{}
}
data, err := json.MarshalIndent(cursorMcpConfigFile{McpServers: servers}, "", " ")
if err != nil {View on GitHub (pinned to 2c0912b6ec)
Solutions
- Provide a non-empty MCP server name.
When it happens
Trigger: Thrown at server/internal/daemon/execenv/cursor_mcp.go:223 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/aee881ab0d5e3846.
Report an issue: GitHub.