multica-ai/multica · error
%s must be a JSON object, not null
Error message
%s must be a JSON object, not null
What it means
Error "%s must be a JSON object, not null" thrown in multica-ai/multica.
Source
Thrown at server/cmd/multica/cmd_agent.go:1343
if trimmed == "" {
if allowNull {
return nil, fmt.Errorf("%s: empty input; pass 'null' to clear or a JSON object to set", flag)
}
return nil, fmt.Errorf("%s: empty input; pass a JSON object", flag)
}
var probe any
if err := json.Unmarshal([]byte(trimmed), &probe); err != nil {
if allowNull {
return nil, fmt.Errorf("%s must be a valid JSON object, or 'null' to clear", flag)
}
return nil, fmt.Errorf("%s must be a valid JSON object", flag)
}
if probe == nil {
if allowNull {
// null → clear (NULL column server-side; on create it is a no-op).
return json.RawMessage("null"), nil
}
return nil, fmt.Errorf("%s must be a JSON object, not null", flag)
}
if _, ok := probe.(map[string]any); !ok {
if allowNull {
return nil, fmt.Errorf("%s must be a JSON object, or 'null' to clear", flag)
}
return nil, fmt.Errorf("%s must be a JSON object", flag)
}
return json.RawMessage(trimmed), nil
}
// resolveMcpConfig collects the --mcp-config, --mcp-config-stdin, and
// --mcp-config-file flags and returns the raw JSON value to send, a bool
// indicating whether the caller supplied any of them, and any error. Mirrors
// resolveCustomEnv; the only behavioural difference is the clear sentinel
// (`null` here vs `{}` for custom_env), because mcp_config distinguishes an
// explicit empty object from an absent config server-side.
func resolveMcpConfig(cmd *cobra.Command) (json.RawMessage, bool, error) {
return resolveMcpJSONObject(cmd, "mcp-config", true)View on GitHub (pinned to 2c0912b6ec)
Solutions
- Pass a JSON object; null is not allowed here.
When it happens
Trigger: Thrown at server/cmd/multica/cmd_agent.go:1343 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/e1dafe3a8e6ff380.
Report an issue: GitHub.