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

# ToolCallContent

# ToolCallContent

Tool/function call request from the LLM.

```python theme={null}
from adaline_api.models.tool_call_content import ToolCallContent
```

***

## Fields

<ParamField body="modality" type="str" required>
  Must be `"tool-call"`.
</ParamField>

<ParamField body="index" type="int" required>
  Zero-based index of the tool call. Minimum: 0.
</ParamField>

<ParamField body="id" type="str" required>
  Unique identifier for this tool call.
</ParamField>

<ParamField body="name" type="str" required>
  Name of the function to call.
</ParamField>

<ParamField body="arguments" type="str" required>
  JSON-encoded string of function arguments.
</ParamField>

<ParamField body="server_name" type="str | None" optional>
  Optional MCP server name. Aliased as `serverName` in JSON.
</ParamField>

***

## Example

```python theme={null}
import json
from adaline_api.models.tool_call_content import ToolCallContent
from adaline_api.models.message_content import MessageContent

tool_call = ToolCallContent(
    modality="tool-call",
    index=0,
    id="call_abc123",
    name="get_weather",
    arguments=json.dumps({"city": "San Francisco", "units": "fahrenheit"})
)

content = MessageContent(actual_instance=tool_call)
```

**JSON**:

```json theme={null}
{
  "modality": "tool-call",
  "index": 0,
  "id": "call_abc123",
  "name": "get_weather",
  "arguments": "{\"city\":\"San Francisco\",\"units\":\"fahrenheit\"}"
}
```

***

## Related

* [ToolResponseContent](/docs/reference/sdk/v2/python/types/ToolResponseContent) — the corresponding tool response
* [MessageContent](/docs/reference/sdk/v2/python/types/MessageContent) — union wrapper for all content types
* [PromptMessage](/docs/reference/sdk/v2/python/types/PromptMessage) — chat message containing content arrays
