Mistral AI, by what Mistral reports rather than what the name suggests
The fifth connector in the family adds Mistral AI to the WordPress AI Client. Mistral is the provider that makes capability detection easy and model selection hard, and both are worth a word.
Easy, because Mistral reports what each model can do, model by model, in its own catalogue: chat, function calling, vision, reasoning. The connector reads those flags instead of guessing from identifiers, so a model is offered as vision-capable because Mistral says it is. Mistral also accepts a real JSON schema on response_format, not only JSON mode, so structured output is offered with the schema a WordPress feature asks for rather than a hopeful request for valid JSON.
Hard, because Mistral answers one catalogue endpoint for a range much wider than the AI Client can represent. Transcription, text-to-speech, OCR, moderation and safety-classification models arrive in the same list as the chat models, and their identifiers do not reliably say so — Shieldstral is a safety classifier whose name gives no hint of it. The connector reads the task each model reports and leaves those out, so the picker only offers something WordPress can actually call.
Two further kinds of model are kept but moved to the back of the list, because position is how the AI Client decides what an unconfigured site calls. Mistral publishes a retirement date on a model as soon as a replacement exists, and that model keeps working until the date arrives: removing it would take away something that still answers, so it stays selectable and simply stops being the default anyone inherits. Mistral's labs- models are experimental and documented as unfit for production, and one of those sorts ahead of every mistral- identifier alphabetically. Both remain choosable; neither wins by accident.
Embeddings for mistral-embed and codestral-embed are discovered and implemented, and will be offered as soon as the WordPress AI Client ships its embedding model contract. WordPress 7.1 defines the capability without it.
The full changelog has the release notes.