AgentsReady
Verified deep dive · AI models

Mistral AI

Run the agent liveReport a change
5 minTime to key
NoNo-human path
2Human gates
8/10Onboarding score
Email verificationPhone OTP

Fastest path to a key

  1. Sign up at console.mistral.ai (email or SSO providers)
  2. Email verification
    Verify email
  3. Phone OTP
    Phone verification by SMS for Free mode (one number per free plan, per help center; the docs quickstart doesn't mention it)
  4. Free mode is on by default with no card
  5. Studio > API Keys > Create new key (name, expiration, connector scope)
  6. export MISTRAL_API_KEY and curl /v1/chat/completions
  7. Working API key

Biggest gap

The MCP has no OAuth, so an agent still has to get a key a human copied out of the dashboard. The phone OTP gates the free tier.

Worth copying

The product MCP sits at api.mistral.ai/mcp and uses the same API key, so once you have a key it is one command to connect.

Sources (7) · checked 2026-10-11
60Readiness score / 100
L3 Agent-operableBeats 80% of 1,846 companies
Access20/20
Context11/20
Interfaces16/32
Onboarding8/19
Trust5/9
llms.txt · root
OpenAPI · https://docs.mistral.ai/openapi.yaml

Biggest gains

  1. +12 Remote MCP server for the product. Host a remote MCP server (e.g. mcp.<domain>/mcp, Streamable HTTP) for your core actions.
  2. +6 Docs available as markdown. Serve every docs page as .md, or honour Accept: text/markdown.
  3. +6 Agents can self-register OAuth clients. Support dynamic client registration (RFC 7591) or client ID metadata documents so MCP clients connect in one click.
All 20 checks
  • PASSAgents get the real page, not a bot wall10
  • PASSrobots.txt lets user-triggered agents in6
  • PASSContent is server-rendered4
  • PASSllms.txt exists8
  • FAILllms-full.txt exists3
  • FAILDocs available as markdown6
  • PASSSitemap2
  • PASSStructured metadata1
  • PASSPublic developer docs4
  • PASSMachine-readable API spec8
  • FAILRemote MCP server for the product12
  • FAILDocs MCP or searchable docs4
  • PASSSDKs and a CLI4
  • FAILOAuth discovery metadata5
  • FAILAgents can self-register OAuth clients6
  • PASSSelf-serve API keys5
  • PASSFree tier or test mode3
  • FAILAgent manifests4
  • PASSsecurity.txt2
  • PASSPublic status page3

Your fix pack: 8 changes, up to +40 points

Each change is ready to paste, filled in for mistral.ai, with a command to check it worked. Or hand the whole list to your coding agent.

A remote MCP server lets Claude, ChatGPT and Cursor act on your product in one click, with no glue code.

Where: https://mcp.mistral.ai/mcp (Streamable HTTP)
// npm i @modelcontextprotocol/sdk zod  — minimal remote MCP server (Streamable HTTP, stateless)
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
import express from "express";
import { z } from "zod";

const app = express();
app.use(express.json());

app.post("/mcp", async (req, res) => {
  const server = new McpServer({ name: "mistral.ai", version: "1.0.0" });
  // One tool per core job. Clear verbs, typed inputs, small outputs.
  server.tool("create_<thing>", "Create a <thing> for the signed-in user.", { name: z.string() },
    async ({ name }) => {
      const key = req.headers.authorization?.replace("Bearer ", ""); // scoped API key or OAuth token
      const r = await fetch("https://mistral.ai/v1/<things>", { method: "POST", headers: { Authorization: `Bearer ${key}` }, body: JSON.stringify({ name }) });
      return { content: [{ type: "text", text: await r.text() }] };
    });
  const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: undefined });
  res.on("close", () => transport.close());
  await server.connect(transport);
  await transport.handleRequest(req, res, req.body);
});
app.listen(3000);
Check it worked:curl -s -X POST https://mcp.mistral.ai/mcp -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"t","version":"1"}}}' -i | head -15

Add the badge to your README

AgentsReady badge for mistral.ai
[![AgentsReady](https://agentsready.dev/badge/mistral.ai)](https://agentsready.dev/c/mistral.ai)