Text content, OR a list of rich content parts (for multimodal input).
Message role in the provider-neutral conversation.
OptionaltoolTool result payload (tool messages only).
OptionaltoolTool calls emitted by the assistant (assistant messages only).
OptionaltoolWhether the MCP tool reported an error.
OptionaltoolTool name associated with a tool result.
OptionaltoolRaw result returned by the MCP tool.
Provider-neutral message shape. Each provider module is responsible for mapping this into its wire format (OpenAI chat.completions, Anthropic messages, Gemini generateContent).