> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Message Params • AI Agent SDK

> MessageParams: Validated ``message`` frame — a client turn sent to the agent.

# MessageParams

> Defined in the [**protocols**](../modules/protocols) module.

<Badge color="blue">AI Agent</Badge>

Validated `message` frame — a client turn sent to the agent.

Completes the typed contract for the advertised `message` method so it
is no longer hand-parsed per handler.

Attributes:
content: The message body (text, or a structured payload).
session\_id: Optional session the message belongs to.
message\_id: Optional client-supplied idempotency/correlation id.
metadata: Optional additional message metadata.

## Properties

<ResponseField name="content" type="Union">
  No description available.
</ResponseField>

<ResponseField name="session_id" type="Optional[str]">
  No description available.
</ResponseField>

<ResponseField name="message_id" type="Optional[str]">
  No description available.
</ResponseField>

<ResponseField name="metadata" type="Dict[str, Any]">
  No description available.
</ResponseField>

<ResponseField name="type" type="str">
  No description available.
</ResponseField>

## Methods

<CardGroup cols={2}>
  <Card title="from_frame()" icon="function" href="../functions/MessageParams-from_frame">
    Validate a raw `message` frame into typed params.
  </Card>
</CardGroup>

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/gateway/protocols.py#L463">
  `praisonaiagents/gateway/protocols.py` at line 463
</Card>
