# content_blocks
```python
result = agent.invoke({"messages": [{"role": "user", "content": "..."}]})
print(result["messages"][-1].content_blocks)
```
## Where it works
Standard content block support is implemented in: langchain-anthropic, langchain-aws, langchain-openai, langchain-google-genai, langchain-ollama. Broader provider support is still landing.
## Rules
- Use `content_blocks` when you need structured access to what the model produced (text parts, reasoning parts, tool calls) without provider-specific parsing.
- Fall back to `message.content` when the provider does not implement blocks yet. It remains valid and is not deprecated.
- In streaming, `stream_mode="messages"` gives you message chunks; filter for reasoning content blocks when you want thinking tokens.