Mirascope Frog Logo
Mirascope
DocsBlogPricingCloud
⌘K
Type to search
⌘Kto search
Escto close
mirascope
v2.0.2
1.4k
Join our
WelcomeLearnGuidesAPI Referencev1 (Legacy)
DocsGuidesAPI
Overview
Core
CallCall ParamsCall ResponseCall Response ChunkDynamic ConfigStreamTool
Llm
CallCall ResponseCall Response ChunkContextOverrideStreamTool
Mcp
Client
Retries
FallbackTenacity
Tools
# mirascope.core.mistral.tool The `MistralTool` class for easy tool usage with Mistral LLM calls. <Info title="Usage"> [Tools](/docs/v1/learn/tools) </Info> ## <ApiType type="Class" path="core/mistral/tool" symbolName="MistralTool" /> MistralTool A class for defining tools for Mistral LLM calls. Example: ```python from mirascope.core import prompt_template from mirascope.core.mistral import mistral_call def format_book(title: str, author: str) -> str: return f"{title} by {author}" @mistral_call("mistral-large-latest", tools=[format_book]) def recommend_book(genre: str) -> str: return f"Recommend a {genre} book" response = recommend_book("fantasy") if tool := response.tool: # returns a `MistralTool` instance print(tool.call()) ``` **Bases:** <TypeLink type={{"type_str": "BaseTool", "description": null, "kind": "simple", "doc_url": "/docs/v1/api/core/base/tool#basetool"}} /> <AttributesTable attributes={[ { "name": "tool_call", "type_info": { "type_str": "SkipJsonSchema[ToolCall]", "description": null, "kind": "generic", "base_type": { "type_str": "SkipJsonSchema", "description": null, "kind": "simple", "doc_url": "https://docs.pydantic.dev/latest/api/json_schema/#pydantic.json_schema.SkipJsonSchema" }, "parameters": [ { "type_str": "ToolCall", "description": null, "kind": "simple", "doc_identifier": "ToolCall" } ] } } ]} /> ## <ApiType type="Function" path="core/mistral/tool" symbolName="tool_schema" /> tool_schema Constructs a JSON Schema tool schema from the `BaseModel` schema defined. Example: ```python from mirascope.core.mistral import MistralTool def format_book(title: str, author: str) -> str: return f"{title} by {author}" tool_type = MistralTool.type_from_fn(format_book) print(tool_type.tool_schema()) # prints the Mistral-specific tool schema ``` <ParametersTable parameters={[ { "name": "cls", "type_info": { "type_str": "Any", "description": null, "kind": "simple", "doc_identifier": null } } ]} /> <ReturnTable returnType={{ "type_info": { "type_str": "dict[str, Any]", "description": null, "kind": "generic", "base_type": { "type_str": "dict", "description": null, "kind": "simple", "doc_url": "https://docs.python.org/3/library/stdtypes.html#dict" }, "parameters": [ { "type_str": "str", "description": null, "kind": "simple", "doc_url": "https://docs.python.org/3/library/stdtypes.html#str" }, { "type_str": "Any", "description": null, "kind": "simple", "doc_url": "https://docs.python.org/3/library/typing.html#typing.Any" } ] } }} /> ## <ApiType type="Function" path="core/mistral/tool" symbolName="from_tool_call" /> from_tool_call Constructs an `MistralTool` instance from a `tool_call`. <ParametersTable parameters={[ { "name": "cls", "type_info": { "type_str": "Any", "description": null, "kind": "simple", "doc_identifier": null } }, { "name": "tool_call", "type_info": { "type_str": "ToolCall", "description": null, "kind": "simple", "doc_identifier": "ToolCall" }, "description": "The Mistral tool call from which to construct this tool instance." } ]} /> <ReturnTable returnType={{ "type_info": { "type_str": "MistralTool", "description": null, "kind": "simple", "doc_url": "/docs/v1/api/core/mistral/tool#mistraltool" } }} />

Provider

On this page

Provider

On this page

© 2026 Mirascope. All rights reserved.

Mirascope® is a registered trademark of Mirascope, Inc. in the U.S.

Privacy PolicyTerms of Use